您的位置:首页 > 编程语言 > C#

C# 字符串分割,包括分割多个字符

2013-11-13 18:07 302 查看
(1)如果字符串格式为
String str="abc#def#hijkl#mn";
string[] s = str.Split(new char[] { '#' });

string[] s = str.Split('#');

Eval("") + "#"+Eval("")

重点是split中的函数是字符型,不是字符串
结果就是
s[0]="abc";
s[1]="def";
s[2]="hijkl";
s[3]="mn";
(2)如果是单纯的字符串截取就简单了,比如:
String str="abcdefg";
String strnew=str.Substring(3,3);
结果是strnew="def";


去掉最后一个字符


s1 = s1.Remove(s1.LastIndexOf(","), 1);


分割多个字符,比如换行, 需要使用正则表达式

命名空间:using System.Text.RegularExpressions;


[align=left]string[] s = Regex.Split( txt_in.Text, "\r\n");[/align]

[align=left]如果要分割多种[/align]

string[] s = txt_in.Text.Split(new char[] { '*', '+' }, StringSplitOptions.None);

然后,其实不用StringSplitOptions.None也是可以的即:

string[] s = txt_in.Text.Split(new char[] { '*', '+' });

好吧, 其实看MSDN的.net库中的String.split方法是最快的

这个是结合后的方法

 string[] s = txt_in.Text.Split(new string[] { "+", "\r\n" },StringSplitOptions.None);

=======================
如果要同时分割 +++,++,+比如A+B++b+++C++E为 ABbCE
 string[] s = txt_in.Text.Split(new string[] { "+++","++","+", "\r\n" },StringSplitOptions.None);
注意顺序, 把数量多的放在前面
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: