千位分隔符的正则表达式
Regular Expression for Thousand Separator
我创建了一个正则表达式来验证按键时的输入。正则表达式的问题在于它允许按顺序输入多个逗号。下面是正则表达式
"^''-?''d*(',''d{0,3})*(''.''d{0,2}?)?$"
它允许用户输入像 100 这样的值,,,,,我想停止。匹配应为 123,000.00
就我而言,我想允许用户键入 100,
输入可以以逗号结尾,因为我正在验证按键上的输入,所以它应该允许 100,(以逗号结尾)
你可以这样做:
^-?('d+,?)*('.'d+)?$
这将匹配带有复选标记的那个
100,000 √
100,,,
100 √
100, √
,100
100.00
这是另一个,因为我不明白你在评论中的意思:
^-?'d+(,'d+)*('.'d+)?$
将匹配
100,000 √
100,,,
100 √
100,
,100
100.00 √
虽然这仍然符合1000,00
由于这一行(',''d{0,3})*
,您按顺序得到多个逗号。在这里,您说的是匹配 3 位或没有数字和逗号 0 或更多次。 ,,,
表示 1 个逗号和 0 位数字 3 次。您可以尝试使用此方法来解决您的问题:^-?'d+(?:,'d{3})*(?:[,.](?:'d{1,2})?)?$
。
希望对您有所帮助。
如果您不限制小数点后的数字数量(例如:2),则可以尝试此正则表达式^[0-9]{1,3}(,[0-9]{3})*('.[0-9]+)?$
相关文章:
- 不带小数点的千分隔符的正则表达式
- 千位分隔符的正则表达式
- 与正则表达式拆分的 js 将保持无与伦比的分隔符
- jquery正则表达式在2个分隔符之间进行替换
- JavaScript 拆分正则表达式保留分隔符
- 正则表达式匹配并替换为 JS 中包含的分隔符
- 正则表达式使用特定的分隔符JavaScript从字符串中提取部分
- 如何在分隔符正则表达式 javascript 之间选择 char
- 增强千位分隔符的正则表达式
- JavaScript或Notepad++正则表达式,为任意文本添加数千个分隔符
- 用于分隔值列表的正则表达式,其中的值可能包含分隔符
- 拆分正则表达式转义分隔符
- Javascript正则表达式捕获组中的单词和分隔符
- 匹配分隔符之间的特殊字符的正则表达式
- 如何将locate的正则表达式更改为delete参数的分隔符's查询字符串
- 正则表达式,用于不处理点后面的数字的正向前看千位分隔符
- 使用正则表达式拆分逗号上带有混合分隔符的单词
- 具有最小值和千位分隔符的数字的正则表达式
- c++正则表达式.获取带分隔符的字符串
- 分析已知键的字符串正则表达式,但保留分隔符