我的问题是从货币列表列表中提取数字.
我的测试数据就是这样的
$100.00
AUD 2012.00
Rs. 234.0 ASD
133 USD
Another thing 1233S.E122
Blah Blah 1.23 
SG$ 013.3
23.03 Something
Something T1233S.122S Else
Whatever 2
我想出的正则表达式是
(\d+)\.?(\d+)?
基本上,一个数字后跟一个可选的点和另一个可选的数字.
因此,虽然这很好,但它比我想要的更有效.举个例子,它匹配
1233和122 in 1233S.E122和相同T1233S.122S
我理解,因为我使用全局标志运行它,所有数字都匹配.
如何使它与开头,中间或结尾包含非数字的那些不匹配?
由于我是RegEx的初学者,请善意地给出您的答案的简要说明.
使用一些单词边界......
\b\d+(?:\.\d+)?\b
这将匹配带有字边界的可选小数位的数字.
我也整理了你的正则表达式,假设你想要匹配整数而不是单独的小数.