读书人

java正则表达式 价位验证

发布时间: 2013-01-22 10:23:54 作者: rapoo

java正则表达式 价格验证
一个是价格的验证 带单位(比如:人民币,RMB,¥,美元,$...很多单位)
[解决办法]
这个...你还是别用正则了,可匹配的条件太多了。各种货币,各种写法。 正则的话 你还放弃吧。
直接规定用哪几种货币单位 还行
[解决办法]
"xxx".matches("\\d+(\\.\\d)?(人民币
[解决办法]
RMB
[解决办法]

[解决办法]
美元
[解决办法]
$");
[解决办法]

引用:
不行啊
public static void main(String[] args) {
String jiage2="\\d+(\\.\\d)?(人民币
[解决办法]
RMB
[解决办法]

[解决办法]
美元
[解决办法]
$";
String name="15.00$";
System.out.println(name.matches(jiage2));


}


报错
Exception in thread "main……

你的正则String jiage2="\\d+(\\.\\d)?(人民币
[解决办法]
RMB
[解决办法]

[解决办法]
美元
[解决办法]
$";
少了个)吧String jiage2="\\d+(\\.\\d)?(人民币
[解决办法]
RMB
[解决办法]

[解决办法]
美元
[解决办法]
\\$)";
顺便把$转义下
[解决办法]
引用:
public static void main(String[] args) {
String jiage2="\\d+(\\.\\d)?(人民币
[解决办法]
RMB
[解决办法]

[解决办法]
美元
[解决办法]
\\$)";
String name="15.00$";
System.out.println(name.matches(jiage2));


}
返回为false,好像不能小数啊

修改正则String jiage2="\\d+(\\.\\d)?(人民币
[解决办法]
RMB
[解决办法]

[解决办法]
美元
[解决办法]
\\$)";
String jiage2="\\d+(\\.\\d+)?(人民币

[解决办法]
RMB
[解决办法]

[解决办法]
美元
[解决办法]
\\$)";

读书人网 >Java相关

热点推荐