如何在c#中拆分此字符串?

mel*_*aos 4 c# regex split

我真的不习惯c#中的split string方法,我想知道怎么没有多个char函数分割?

而我试图尝试使用正则表达式将此字符串拆分在下面,结果令人沮丧.有人可以帮帮我吗?

基本上我想将下面的字符串拆分为

aa**aa**bb**dd^__^a2a**a2a**b2b**dd^__^
Run Code Online (Sandbox Code Playgroud)

aa**aa**bb**dd
a2a**a2a**b2b**dd
Run Code Online (Sandbox Code Playgroud)

然后进入

aa
aa
bb
dd

a2a
a2a
b2b
dd
Run Code Online (Sandbox Code Playgroud)

谢谢!

Ode*_*ded 10

您可以使用a进行拆分string[].有几个重载.

string[] splitBy = new string[] {"^__^"};
string[] result = "aa*aa*bb*dd^__^a2a*a2a*b2b*dd^__^".Split(splitBy, StringSplitOptions.None);

// result[0] = "aa*aa*bb*dd", result[1] = "a2a*a2a*b2b*dd"
Run Code Online (Sandbox Code Playgroud)


SLa*_*aks 7

你正在寻找这个重载:

someString.Split(new string[] { "^__^" }, StringSplitOptions.None);
Run Code Online (Sandbox Code Playgroud)

我永远不明白为什么没有String.Split(params string[] separators).
但是,您可以将其编写为扩展方法:

public static string[] Split(this string str, params string[] separators) {
    return str.Split(separators, StringSplitOptions.None);
}
Run Code Online (Sandbox Code Playgroud)