我正在尝试定位和替换文本体中的所有数字。我找到了几个几乎可以解决这个问题的正则表达式示例,但没有一个是完美的。我的问题是,我的文本中的数字可能有也可能没有小数和逗号。例如:
“这只5000磅的狐狸跳过了99.999.9998713英尺的栅栏。”
正则表达式应该返回“ 5000
”和“ 99,999.99998713
”。例如,我发现逗号上的数字被拆分,或者被限制在小数点后两位。我开始理解正则表达式,足以看出为什么一些示例被限制在小数点后两位,但我还没有学会如何克服它,并包括逗号获得整个序列。
以下是我的最新版本:
[0-9]+(\.[0-9][0-9]?)?
Which returns, "5000
", "99,99
", "9.99
", and "998713
" for the above text.