A有一个包含一个或多个数字的字符串。这些数字通常是整数,但在某些时候也可以预期十进制。我正在寻找一种解决方案,将千位分隔符(。或者)添加到字符串中的所有数字。
例如
有什么想法吗?
答案 0 :(得分:1)
纯正则表达式中的hacky解决方案是替换
的所有出现(?<=\d)(\d{3})(?!\d)
,$1
。当然,这非常有限,因为它只为每个数字添加一个分隔符,并且还在逗号后添加分隔符。 See regex101 demo.
更清晰的解决方案是使用\d+(?:\.\d+)?
等正则表达式搜索数字,将每个匹配项转换为数字,然后将格式化的数字重新插入文本中。
(你不得不原谅我不包括任何代码,但我还没有用C#编写代码。)