我不是很流利的REGEX,但我有这个序列:
/(.{3})/g
据我所知,这将匹配从字符串的开始开始的每3个字符.如何从字符串的结尾开始并插入'.' (期间性格)他们之间?
额外信息:用户将输入数字,我希望它插入'.' 每3个数字后.这是我为特定项目建造的定制面具.
谢谢
尝试类似的东西:
numberString.replace(/(\d)(?=(\d{3})+(?!\d))/g, "$1.")
Run Code Online (Sandbox Code Playgroud)
请确保numberString确实是一个字符串,或者将其转换为.toString().
说明:
这非常棘手; 它会匹配(\d)一组三个数字之前的每个数字,\d{3}或者这个组重复多次(\d{3])+(因此每三个数字),而不是另一个数字!\d
它使用正向前导(?=)和负向前(?!)来匹配或排除部分字符串,而不将它们包含在匹配结果中.
然后它将自己(使用反向引用 $1)后跟一个点替换第一个匹配组(数字).
| 归档时间: |
|
| 查看次数: |
921 次 |
| 最近记录: |