小编She*_*enk的帖子

通过多个分隔符分割字符串而不创建新的对象分配

我如何将其变成一种消除重复的方法(即,不要重复自己),但也不进行新的装箱/对象分配\xe2\x80\x94或至少少到是可行的。

\n
private static IEnumerable<string> SeparateLineIntoMultipleDefinitions(string line) {\n    string[] splitEntries;\n    splitEntries = (from str in line.Split(new[] {", "}, StringSplitOptions.RemoveEmptyEntries)\n                    where str.Contains(\'=\')\n                    select str).ToArray();\n    if (splitEntries.Length > 2) return splitEntries;\n    splitEntries = (from str in line.Split(\',\')\n                    where str.Contains(\'=\')\n                    select str).ToArray();\n    if (splitEntries.Length > 2) return splitEntries;\n    splitEntries = (from str in line.Split(\' \')\n                    where str.Contains(\'=\')\n                    select str).ToArray();\n    if (splitEntries.Length > 2) return splitEntries;\n    return Enumerable.Empty<string>();\n}\n
Run Code Online (Sandbox Code Playgroud)\n

最初我尝试制作这样的方法:

\n
IEnumerable<string> SplitEntries(object splitter) {\n    return splitter switch {\n        string[] strArray => (from str …
Run Code Online (Sandbox Code Playgroud)

c# string split

0
推荐指数
1
解决办法
6083
查看次数

标签 统计

c# ×1

split ×1

string ×1