And*_*mbu 20
你打算用什么语言?
它应该是这样的:
^\d+(,\d{1,2})?$
Run Code Online (Sandbox Code Playgroud)
阐释:
前面的X数字是:^\d+
where ^
表示字符串的开头,\d
表示数字,+
表示一个或多个
我们使用()
带有问号的组,?
意思是:匹配组内的一个或没有时间.
组内还有,\d{1,2}
,该,
是你写的逗号,\d
仍是一个数字{1,2}
是指一个或两个次匹配前面的数字.
最后一个$
匹配字符串的结尾.
elg*_*lge 15
我对以前的答案不满意.这是我的看法:
\d{1,3}(?:[.,]\d{3})*(?:[.,]\d{2})
|^^^^^^|^^^^^^^^^^^^^|^^^^^^^^^^^|
| 1-3 | 3 digits | 2 digits |
|digits| repeat any | |
| | no. of | |
| | times | |
Run Code Online (Sandbox Code Playgroud)
(详情请见:https://regex101.com/r/cG6iO8/1)
涵盖以下所有案例
但也有奇怪的东西
如果你想要包括5和1000(我个人伤害不喜欢匹配所有数字),那么只需添加一个"?" 像这样:
\d{1,3}(?:[.,]\d{3})*(?:[.,]\d{2})?
Run Code Online (Sandbox Code Playgroud)
我正在研究类似的问题.但是,我想只匹配货币符号或字符串也包括在字符串中,如欧元,欧元,美元或美元.符号可能是尾随或前导.我不在乎Number和Currency子字符串之间是否有空格.我在前面的讨论中使用数字匹配并使用了价格编号:\ d {1,3}(?:[.,]\d {3})*(?:[.,]\d {2})?
这是最终结果:
(USD|EUR|€|\$)\s?(\d{1,3}(?:[.,]\d{3})*(?:[.,]\d{2}))|(\d{1,3}(?:[.,]\d{3})*(?:[.,]\d{2})?)\s?(USD|EUR|€|\$)
Run Code Online (Sandbox Code Playgroud)
我使用(\d{1,3}(?:[.,]\d{3})*(?:[.,]\d{2})?)\s?(USD|EUR|€|\$)
模式来匹配货币符号(此处具有前导空格的容差).我认为您可以轻松地调整任何其他货币
有关最新版本的要点可以在https://gist.github.com/wischweh/b6c0ac878913cca8b1ba找到
归档时间: |
|
查看次数: |
30069 次 |
最近记录: |