我只想匹配类似Python 的浮点数,例如:0.1
、.1
或0.
.我编写了这个正则表达式:r"(\d+\.?\d*)|(\.\d+)"
,发现它也与"(.6"
匹配,这并不是我想要的.我猜这与用括号分组有关,但我没有用反斜杠转义过任何括号.
我使用的是1.7.1版本的regex crate和1.67.0的Cargo.
use regex::Regex;
fn main() {
let pattern = Regex::new(r"^(\d+\.?\d*)|(\.\d+)").unwrap();
assert!(pattern.is_match("(.6"));
}