我需要捕获
\d+\.\d+
或
\d+
但没有别的。
例如,“0.02”,“1”和“0.50”应该匹配。我注意到我不能简单地使用像
这样的东西[\d+\.\d+|\d+]
答案 0 :(得分:4)
(\d+\.\d+|\d+)
应该这样做。
答案 1 :(得分:1)
你可以这样做:
(\d+|\d+\.\d+)
或
(\d+(\.\d+)?)
但是这会创建第二个捕获组。更复杂的版本是:
(\d+(?:\.\d+)?)
顺便说一句,Regular Expression Info是一个极好的常规表达教程和信息网站。
答案 2 :(得分:0)
或\d+(\.\d+)?
如果您觉得更容易阅读:)