C#字符串常見操作總結(jié)詳解
更新時(shí)間:2013年05月22日 17:40:36 作者:
本篇文章是對(duì)C#中字符串的常見操作進(jìn)行了詳細(xì)的總結(jié)介紹,需要的朋友參考下
C#字符串常見操作總結(jié)詳解
(1)取字符串長度 <string>.Length;
(2)字符串轉(zhuǎn)為比特碼 GetBytes(<string>)
(3)字符串相加 推薦StringBuilder sb = new StringBuilder();sb.Append(<string>);
(4)截?cái)嘧址囊徊糠?nbsp; 變量.SubString(起始位置,截取位數(shù));
(5)查指定位置是否為空字符 char.IsWhiteSpace(字符串變量,位數(shù));
(6)查字符是否是標(biāo)點(diǎn)符號(hào) char.IsPunctuation(‘字符');
(7)把字符轉(zhuǎn)化為數(shù)字,查代碼點(diǎn) (int)'變量'
(8)把數(shù)字轉(zhuǎn)為字符,查代碼代表的字符 (char)代碼
(9)清除字符串前后包含的空格 變量.Trim()
(10)替換字符串:字符串變量.Replace(原字符串,新的字符串)
(11)刪除字符串最后一個(gè)字符的3種方法
Eg:string s = “1,2,3,4,5,”;
a) s.SubString(0,s.Length-1)//刪除最后一個(gè)逗號(hào)
b) s.ToString().RTrim(‘,');//刪除逗號(hào),跟的變量是任何有效的字符串
c) s.TrimEnd(‘,');//刪除逗號(hào),后面跟的變量是數(shù)組
char[] mychar={‘5',','};//刪除‘5‘以及',‘
s.TrimEnd(mychar);
(12)Split的3種方法
a) 用單個(gè)字符來分隔 <string>.Split(new char[]{‘字符'}) // <string>.Split(‘字符');
b) 用多個(gè)字符來分隔 <string>.Split(new char[2]{‘字符',''})
c) 用字符串來分隔 Regex.Split(<string>,”字符串”,RegexOptions.IgnoreCase);
(13)幾種輸出字符串的格式
ToString(“n”); //生成12,345.00
ToString(“C”); //生成¥12,345.00
ToString(“e”); //生成1.234500e+004
ToString(“f4”); //生成12345.0000
ToString(“x”); //生成3039(16進(jìn)制)
ToString(“p”); //生成1,234,500.00%
(14)把123456789轉(zhuǎn)換為12-345-6789的3種方法
(a)A = int.Parse(a).ToString(“##-###-####”);
(b)A = a.Insert(5,”-”).Insert(2,“-”);
(c)Using System.Text.RegularExpressions; //先引用
Regex reg = new Regex(@“^(d{2})(d{3})(d{4})$”);
A = reg.Replace(a,”$1-$2-$3”);
(15)輸出21個(gè)A的簡單方法 striing str = new string(‘A',21);
(16)得到隨機(jī)數(shù)的方法
Ramdom r = new Ramdom();
Int n1 = r.Next(); //返回非負(fù)隨機(jī)整數(shù)
Int n2 = r.Next(10); //返回一個(gè)小于所指定最大值(10)的非負(fù)隨機(jī)整數(shù)
Int n3 = r.Next()%10; //返回一個(gè)小于所指定最大值(10)的非負(fù)隨機(jī)整數(shù)
Int n4 = r.Next(1,20); //返回一個(gè)指定范圍(1~20)內(nèi)的隨機(jī)整數(shù)
Int n5 = r.NextDouble(); //得到一個(gè)介于0.0~1.0之間的隨機(jī)整數(shù)
(17)Int32.TryParse(),Int32. Parse(),Convert.ToInt32()比較:
都是將字符串轉(zhuǎn)換為整數(shù)數(shù)字
Int32.TryParse(string,out int);
Int = Int32. Parse(string);
Int = Convert.ToInt32(string);
比較:Convert.ToInt32()在null時(shí)不拋出異常而是返回零;Int32. Parse()會(huì)拋出異常;Int32.TryParse()不拋出異常,會(huì)返回true或false來說明解析是否成功。如果解析錯(cuò)誤,則out調(diào)用放將會(huì)得到零值;
從性能上講,Int32.TryParse()優(yōu)于Int32.Parse(),而Int32.Parse()優(yōu)于Convert.ToInt32()。
建議:在.NET1.1下用Int32.Parse();在.NET2.0下用Int32.TryParse()。
(1)取字符串長度 <string>.Length;
(2)字符串轉(zhuǎn)為比特碼 GetBytes(<string>)
(3)字符串相加 推薦StringBuilder sb = new StringBuilder();sb.Append(<string>);
(4)截?cái)嘧址囊徊糠?nbsp; 變量.SubString(起始位置,截取位數(shù));
(5)查指定位置是否為空字符 char.IsWhiteSpace(字符串變量,位數(shù));
(6)查字符是否是標(biāo)點(diǎn)符號(hào) char.IsPunctuation(‘字符');
(7)把字符轉(zhuǎn)化為數(shù)字,查代碼點(diǎn) (int)'變量'
(8)把數(shù)字轉(zhuǎn)為字符,查代碼代表的字符 (char)代碼
(9)清除字符串前后包含的空格 變量.Trim()
(10)替換字符串:字符串變量.Replace(原字符串,新的字符串)
(11)刪除字符串最后一個(gè)字符的3種方法
Eg:string s = “1,2,3,4,5,”;
a) s.SubString(0,s.Length-1)//刪除最后一個(gè)逗號(hào)
b) s.ToString().RTrim(‘,');//刪除逗號(hào),跟的變量是任何有效的字符串
c) s.TrimEnd(‘,');//刪除逗號(hào),后面跟的變量是數(shù)組
char[] mychar={‘5',','};//刪除‘5‘以及',‘
s.TrimEnd(mychar);
(12)Split的3種方法
a) 用單個(gè)字符來分隔 <string>.Split(new char[]{‘字符'}) // <string>.Split(‘字符');
b) 用多個(gè)字符來分隔 <string>.Split(new char[2]{‘字符',''})
c) 用字符串來分隔 Regex.Split(<string>,”字符串”,RegexOptions.IgnoreCase);
(13)幾種輸出字符串的格式
ToString(“n”); //生成12,345.00
ToString(“C”); //生成¥12,345.00
ToString(“e”); //生成1.234500e+004
ToString(“f4”); //生成12345.0000
ToString(“x”); //生成3039(16進(jìn)制)
ToString(“p”); //生成1,234,500.00%
(14)把123456789轉(zhuǎn)換為12-345-6789的3種方法
(a)A = int.Parse(a).ToString(“##-###-####”);
(b)A = a.Insert(5,”-”).Insert(2,“-”);
(c)Using System.Text.RegularExpressions; //先引用
Regex reg = new Regex(@“^(d{2})(d{3})(d{4})$”);
A = reg.Replace(a,”$1-$2-$3”);
(15)輸出21個(gè)A的簡單方法 striing str = new string(‘A',21);
(16)得到隨機(jī)數(shù)的方法
Ramdom r = new Ramdom();
Int n1 = r.Next(); //返回非負(fù)隨機(jī)整數(shù)
Int n2 = r.Next(10); //返回一個(gè)小于所指定最大值(10)的非負(fù)隨機(jī)整數(shù)
Int n3 = r.Next()%10; //返回一個(gè)小于所指定最大值(10)的非負(fù)隨機(jī)整數(shù)
Int n4 = r.Next(1,20); //返回一個(gè)指定范圍(1~20)內(nèi)的隨機(jī)整數(shù)
Int n5 = r.NextDouble(); //得到一個(gè)介于0.0~1.0之間的隨機(jī)整數(shù)
(17)Int32.TryParse(),Int32. Parse(),Convert.ToInt32()比較:
都是將字符串轉(zhuǎn)換為整數(shù)數(shù)字
Int32.TryParse(string,out int);
Int = Int32. Parse(string);
Int = Convert.ToInt32(string);
比較:Convert.ToInt32()在null時(shí)不拋出異常而是返回零;Int32. Parse()會(huì)拋出異常;Int32.TryParse()不拋出異常,會(huì)返回true或false來說明解析是否成功。如果解析錯(cuò)誤,則out調(diào)用放將會(huì)得到零值;
從性能上講,Int32.TryParse()優(yōu)于Int32.Parse(),而Int32.Parse()優(yōu)于Convert.ToInt32()。
建議:在.NET1.1下用Int32.Parse();在.NET2.0下用Int32.TryParse()。
相關(guān)文章
C#設(shè)計(jì)模式之Observer觀察者模式解決牛頓童鞋成績問題示例
這篇文章主要介紹了C#設(shè)計(jì)模式之Observer觀察者模式解決牛頓童鞋成績問題,簡單講述了觀察者模式的原理并結(jié)合具體實(shí)例形式分析了使用觀察者模式解決牛頓童鞋成績問題的具體步驟相關(guān)操作技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2017-09-09輕松學(xué)習(xí)C#的預(yù)定義數(shù)據(jù)類型
輕松學(xué)習(xí)C#的預(yù)定義數(shù)據(jù)類型,C#的預(yù)定義數(shù)據(jù)類型包括兩種,一種是值類型,一種是引用類型,需要的朋友可以參考下2015-11-11C#使用System.Net庫實(shí)現(xiàn)自動(dòng)發(fā)送郵件功能
在C#編程環(huán)境中,實(shí)現(xiàn)郵件發(fā)送功能是一項(xiàng)常見的需求,無論是Web應(yīng)用程序還是Windows窗體應(yīng)用程序,下面小編就來為大家講講如何使用System.Net庫實(shí)現(xiàn)這一功能吧2025-03-03比較2個(gè)datatable內(nèi)容是否相同的方法
這篇文章主要介紹了比較2個(gè)datatable內(nèi)容是否相同的方法,大家參考使用吧2014-01-01C# System.BadImageFormatException問題及解決
這篇文章主要介紹了C# System.BadImageFormatException問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05