C# Don';不能在特定字符之间分割

C# Don';不能在特定字符之间分割,c#,string,split,character,C#,String,Split,Character,目前,我正在使用以下代码拆分字符串: string[]split=source.split(新字符[]{''}) 所以“快速/小棕色/狐狸”应该是: 这个 快的 /小 棕色的/ 狐狸 我想要的是: 这个 快的 /小布朗/ 狐狸 我已经看到了一些解决方案(我并不真正理解它们),但它们都进入了var中,我希望它进入字符串[]您可以使用正则表达式: string s = "The quick /little brown/ fox"; string[] result = Regex.Matche

目前,我正在使用以下代码拆分字符串:

string[]split=source.split(新字符[]{''})

所以“快速/小棕色/狐狸”应该是:

这个
快的
/小
棕色的/
狐狸

我想要的是:

这个
快的
/小布朗/
狐狸


我已经看到了一些解决方案(我并不真正理解它们),但它们都进入了
var
中,我希望它进入
字符串[]

您可以使用正则表达式:

string s = "The quick /little brown/ fox";
string[] result = Regex.Matches(s, @"((/.+/)|(\b\w+\b))").Cast<Match>().Select(m => m.Value).ToArray();
result.ToList().ForEach(x => Console.WriteLine(x));
string s=“快/小布朗/狐狸”;
string[]result=Regex.Matches(s,@“(/。++/)|(\b\w++\b))).Cast()。选择(m=>m.Value).ToArray();
result.ToList().ForEach(x=>Console.WriteLine(x));
输出:

The quick /little brown/ fox 这个 快的 /小布朗/
fox您可以使用正则表达式:

string s = "The quick /little brown/ fox";
string[] result = Regex.Matches(s, @"((/.+/)|(\b\w+\b))").Cast<Match>().Select(m => m.Value).ToArray();
result.ToList().ForEach(x => Console.WriteLine(x));
string s=“快/小布朗/狐狸”;
string[]result=Regex.Matches(s,@“(/。++/)|(\b\w++\b))).Cast()。选择(m=>m.Value).ToArray();
result.ToList().ForEach(x=>Console.WriteLine(x));
输出:

The quick /little brown/ fox 这个 快的 /小布朗/
福克斯:没有正则表达式你很难做到这一点。您必须使用Split还是可以使用regex?一个
var
可以是一个
string[]
var
是方法返回的结果。如果你的方法返回一个字符串数组,那么它就是一个字符串数组。如果需要的话,可以使用正则表达式。为什么它太宽?@xxbbcc:我认为这个问题是明确而具体的。所以我会理解,如果它关闭,是因为有一个副本(当然),而不是因为它“太宽”。没有正则表达式,你很难做到这一点。您必须使用Split还是可以使用regex?一个
var
可以是一个
string[]
var
是方法返回的结果。如果你的方法返回一个字符串数组,那么它就是一个字符串数组。如果需要的话,可以使用正则表达式。为什么它太宽?@xxbbcc:我认为这个问题是明确而具体的。因此,我会理解它是否会被关闭,因为有一个副本(当然),但不是因为它“太宽”。人们可能希望使
/…/
匹配非贪婪,因为正则表达式的编写方式,拆分类似
的a/b c/d/e f/g
很可能会给您
a
/bc/d/ef/
g
而不是预期的
a
/bc/
d
/ef/
g
。只是说,“…你可能想让
/…/
匹配非贪婪,因为正则表达式的编写方式,拆分类似
a/bc/d/ef/g
的东西很可能会给你
a
/bc/d/ef/
g
,而不是预期的
a
/bc
d
,”,
/ef/
g
。只是说。。。