我如何将其变成一种消除重复的方法(即,不要重复自己),但也不进行新的装箱/对象分配\xe2\x80\x94或至少少到是可行的。
\nprivate 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}\nRun Code Online (Sandbox Code Playgroud)\n最初我尝试制作这样的方法:
\nIEnumerable<string> SplitEntries(object splitter) {\n return splitter switch {\n string[] strArray => (from str …Run Code Online (Sandbox Code Playgroud)