C# 使用regexp进行拆分(有例外),避免重写拆分函数
我想使用regexp分割一组行,除非逗号前面有破折号 这就是问题所在:C# 使用regexp进行拆分(有例外),避免重写拆分函数,c#,regex,split,C#,Regex,Split,我想使用regexp分割一组行,除非逗号前面有破折号 这就是问题所在: Likör, Choklad-, kaffe- och nötter 结果分割应如下所示: Likör Choklad-, kaffe- och nötter 测试数据: Punsch Rosé Mousserande vin, Rosé Röda, Fruktigt & Smakrikt Likör, Choklad-, kaffe- och nötter Likör, Grädde o
Likör, Choklad-, kaffe- och nötter
结果分割应如下所示:
Likör
Choklad-, kaffe- och nötter
测试数据:
Punsch
Rosé
Mousserande vin, Rosé
Röda, Fruktigt & Smakrikt
Likör, Choklad-, kaffe- och nötter
Likör, Grädde och ägg
Vita, Lätt & Avrundat
每一行都会自己通过拆分函数。
语言是C#如果有帮助的话,我使用的函数是
System.Text.RegularExpressions.Regex.Split
我从来没有掌握过regexp。Regexps已尝试:
@"[^-],"
@"(,)(?!-)"
@"[^-][,]"
@"(?!-,),"
@"[?:^-][,]"
@"^-,|[,]"
@"[^-](?:,)"
使用“反向向后看”尝试此模式
(?<!-),
(?
我认为您在模式的末尾缺少一个空格(即逗号之后)。如果结尾没有空格,分割结果中的第二个字符串将以空格开头,这与OP的示例输出不同。