【发布时间】:2019-03-20 20:42:33
【问题描述】:
我的列具有以下值:
好的,,A,B,INSERV,OOS,,
我想用 Regex.Replace (field,"replace pattern") 得到以下结果,所以如果字符串之间有双逗号,那么在逗号之间放 NONE 并删除最后多个逗号:
OK,NONE,A,B,INSERV,OOS
谢谢, S
【问题讨论】:
-
我可以去掉多个逗号,但它并不能解决放置 NONE 的问题:Regex.Replace (field,",{{2,}}",",") 所以我需要不同的东西。
-
看起来你使用的是 C#?为什么不直接使用
field.TrimEnd(',')来去掉结尾的逗号,而不是使用昂贵的正则表达式? -
另外,如果有多个逗号,您是否只需要一个“NONE”条目?
-
模式替换并不是最好的工具。如果此字符串来自列表或数组,只需从中删除空字符串。如果它确实以字符串开头,则通过在
,上拆分将其转换为列表,然后删除空字符串。