在我的计算器应用程序中,我有一个像这样的字符串
String input = "-.46sin(34)*23000.34(2^3"
我想在字符串中的数字中添加千位分隔符 这样输出就像:
-.46sin(34)*23,000.34(2^3
如何使用正则表达式实现此目的?我使用的语言是Java,浮点精度是6
更新:
Ulugbek Umirov在评论中的最终答案是正确的答案
正则表达式:
(?<!\.\d{0,6})\d+?(?=(?:\d{3})+(?:\D|$))
Java代码:
String output = input.replaceAll("(?<!\\.\\d{0,6})\\d+?(?=(?:\\d{3})+(?:\\D|$))", "$0,");