字符串切割Split()
以下代码都在vs.net2005/xp下测试通过
一.
/**/
///根据单个字符来切割 ///
string
str
=
"
abcdefabcdefabcdefessssssss
"
;
string
[] strGroup
=
str.Split(
'
f
'
);
//
Split()返回的是string类型的数组,注意这里是以字符char类型的 'c'做为参数,不是string类型
foreach
(
string
i
in
strGroup) Console.WriteLine(i.ToString()); Console.WriteLine(
"
*****************************
"
);
//
*********************************
/**/
///根据多个字符来切割,即只要发现有这个几个字符里的任何一个或多个,它都会在这个位置开始切割 ///
string
[] strGroup1
=
str.Split(
new
char
[
3
]
{ 'D', 'e', 'f' }
);
foreach
(
string
i
in
strGroup1) Console.WriteLine(i.ToString());如图1:
二.
//
根据正则表达式来实现切割字符串切割的比较
添加
using
System.Text.RegularExpressions; Console.WriteLine(
"
以下是在正则表达式下用Split()后的显示
"
);
string
content
=
"
agcsmallmacsmallgggSMallytx
"
;
string
[] resultString
=
Regex.Split(content,
"
small
"
, RegexOptions.IgnoreCase);
//
注意RegexOptions是可以设置诸如大小写匹配等等属性
foreach
(
string
i
in
resultString) Console.WriteLine(i.ToString()); Console.WriteLine(
"
/n
"
); Console.WriteLine(
"
以下是字符串直接Split()后的显示
"
);
string
[] m
=
content.Split(
new
char
[]
{ 's', 'm', 'a', 'l', 'l' }
, StringSplitOptions.RemoveEmptyEntries);
foreach
(
string
i
in
m) Console.WriteLine(i.ToString());如图:
三.使用匹配的正则表达式
/**/
///使用匹配的正则表达式 注意中间的*号数量不同,但是显示出来都没有空行。
string
str1
=
"
中******华****人***民**共*和******国
"
;
string
[] str2
=
Regex.Split(str1,
@"
[*]+
"
);
//
匹配的正则表达式如:@"[*]+"
foreach
(
string
i
in
str2) Console.WriteLine(i.ToString());结果如图:
转载请注明原文地址: https://ibbs.8miu.com/read-21517.html