我需要解析一个字符串,所以结果应该像这样输出:
"abc,def,ghi,klm,nop"
但我收到的字符串可能看起来更像这样:
",,,abc,,def,ghi,,,,,,,,,klm,,,nop"
关键是,我事先并不知道单词之间有多少个逗号分隔。
有没有我可以在 C# 中使用的正则表达式来帮助我解决这个问题?
最佳答案
您可以使用 ,{2,}
表达式来匹配出现的 2 个或更多逗号,然后将它们替换为单个逗号。
您可能还需要一个 Trim
调用,以删除 Regex.Replace
调用遗留下来的任何前导或尾随逗号。 (可能有一些方法可以只用一个正则表达式替换来做到这一点,但没有立即想到。)
string goodString = Regex.Replace(badString, ",{2,}", ",").Trim(',');
关于c# - 正则表达式删除字符串中的双/三逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2057361/