String eL= "\\d+(.\\d+)?"; 这个正则表达式是什么意思

String eL= "\\d+(.\\d+)?";
Pattern p = Pattern.compile(eL);
Matcher m = p.matcher(price);
boolean result = m.matches();
return result;
最新回答
伸手碰阳光

2024-11-25 13:32:10

"\\d+(.\\d+)?" 就是 模式 \d+(.\d+)? 因为是放在字符串里, 所以 \ 都写成 \\
其中 \d 表示数字(也就是 '0' ~ '9'), +表示至少有一个, ?表示没有或者有一个, ()是分组用的
于是这个模式表示 "一个数字后面可能接一个小数点加数字"
这个模式能匹配 89 或者 89.76
也就是 整数 或者 小数
但是不能带正负号.
星河明淡

2024-11-25 09:36:36

匹配正整数或正小数