我已经尝试了很多来使用我的正则表达式找出值,但不知何故它不起作用,你们中的一些人可能会有所帮助。
102 美元 102.36 美元 204.36 美元
我正在使用下面的正则表达式
[$]\\d+[.]\\d{0,2}
但这只是获取存在小数的值(对于我的情况是 102.36 和 204.36),但对于我的情况,十进制是可选的,请帮帮我。
我已经尝试了很多来使用我的正则表达式找出值,但不知何故它不起作用,你们中的一些人可能会有所帮助。
102 美元 102.36 美元 204.36 美元
我正在使用下面的正则表达式
[$]\\d+[.]\\d{0,2}
但这只是获取存在小数的值(对于我的情况是 102.36 和 204.36),但对于我的情况,十进制是可选的,请帮帮我。
?
与括号一起用于可选部分:
[$]\\d+([.]\\d{0,2})?
\$([0-9]+(\.[0-9]+)?))
美元符号后跟数字一次或多次可选地后跟(点后跟数字 1 次或多次)
\$([0-9]+(\.[0-9]{2})?)
相同但只会匹配 2dp,第一个(不是第 0 个)匹配类将包含数字。
第0场比赛:全部(包括$)
第一场比赛:所有号码
第二场比赛:小数点和后面的数字(如果存在)
不使用 Perl 风格或正则表达式捕获第二场比赛:
\$([0-9]+(?:\.[0-9]{2})?)