我有以下字符串:
21>请具体说明.你是什么意思?21>你好,那里623>西蒙?
我想把它分成:
21>Please be specific. What do you mean by that?
21>Hello are you there
623>Simon?
Run Code Online (Sandbox Code Playgroud)
基本上,拆分器是数值(在这种情况下为21和623),后跟>
.
我的实现是我找到了>
char,然后向后走,直到找到非数字值.
所以基本上使用sub-string
等.但它很难看,而且我确信有更好的Regex实现,但我对此并不了解.
那么可以在这里使用正则表达式吗?
您可以通过向前看并向后看来实现这一目标,这样您的匹配就是您想要拆分的零长度区域.
string s = "21>Please be specific. What do you mean by that?21>Hello are you there623>Simon?";
Regex reg = new Regex(@"(?<=\D)(?=\d+>)");
var r = reg.Split(s);
foreach(var i in r)
Console.WriteLine(i);
Run Code Online (Sandbox Code Playgroud)
会输出
21>请具体说明.你是什么意思?
21>你好,你在那里
623>西蒙?
归档时间: |
|
查看次数: |
59 次 |
最近记录: |