這些價值觀,我想拆分字符串cascadingly怎麼辦級聯分裂與C#的LINQ - 多重的foreach分裂
List<string> lstsplitWord = new List<string> { ",", "=", "،", "أو", "او", "/", "." };
我已經寫了他們作爲這樣的,但我假設必須有更優雅此
foreach(var part1 in srSplitPart.Split(',')) {
foreach(var part2 in part1.Split('=')) {
foreach(var part3 in part2.Split('،')) {
foreach(var part4 in part3.func_Split_By_String("أو")) {
foreach(var part5 in part4.func_Split_By_String("او")) {
foreach(var part6 in part5.Split('/')) {
foreach(var part7 in part6.Split('.')) {
if (part7.Length < 3)
continue;
string srTrans = part7.FixArabic().func_Special_Trim();
srTemp.AppendLine($ "{srTitle} > {srTrans} \t {irTransLevel}");
irTransLevel++;
}
}
}
}
}
}
}
C#的.NET 4.6.2
特殊分裂功能LINQ溶液
public static List<string> func_Split_By_String(this string Sentence, string srReplace)
{
return Sentence.Split(new string[] { srReplace }, StringSplitOptions.None).ToList();
}
之所以如此嵌套我甚至不能告訴你想在這裏什麼 – EpicKip
不是斯普利特()超載就夠了嗎?只是通過lstsplitWord。 .Split(lstsplitWord) – Fabiano