关于正则表达式的问题!在线求救!。。。 (\\d+(\\.\\d*)?); (\\d+(\\.\\d+)?); (\\d+\\.?\\d+); 中三个不同?为什么导致了三种不同结果, 谁能解释一下? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 String regEx = "[+|-]?(\\d+(\\.\\d+)?)|(\\.\\d+)"; //输出是:“3”[+|-]? 是指+ 或- 其中有一个或0个...[] 代表一个字符....| 代表或? 代表前面内容出现一次或0次...(\\d+(\\.\\d+)?)|(\\.\\d+) 代表是符点数或整数 或点后面一个整数() 里面是一个整体.一般都是一个字符串\\d 代表数字+ 代表出现一次或多次.....\\. 代表一个小数点"[+|-]?(\\d+(\\.\\d+)?)|(\\.\\d+) 从整体看.....这个匹配的主要是(\\d+(\\.\\d+)?)前央[+|-]是可有可无的...后面又是个或....而这一问分中(\\.\\d+)?又是可无的..所以只要和\\d+ 匹配就行了...第一个就这样分析..以后的你自己分析吧 对于[+|-]?(\\d+(\\.\\d+)?)|(\\.\\d+),关心的是(\\.\\d+)部分,它表达的意思是如果出现了.,那么后面要跟至少一个数字,从而 3匹配,而3.不匹配 对于[+|-]?(\\d+(\\.\\d*)?)|(\\.\\d+),来看(\\.\\d*)==>如果出现了.,那么不必出现任何数字==>3.匹配(当然,3也是匹配的, 不过Regex使用的是贪婪匹配) 对于[+|-]?(\\d+\\.?\\d+)|(\\.\\d+),很显然,3是不能完成匹配的. ps:这可能是你要的: [+-]?(\\d+(\\.\\d+)?|\\.\\d+) 关于Java中的类、方法相互调用的问题 菜鸟的问题???!!!! 超简单的问题 麻烦大家来帮我找找bug,找出一个奖励10分,分不够在加,我可用分570分,不可能有57个bug吧? 请看一这打印程序有什么问题? 关于对象序列化 【急】 关于SMSLib发送短信问题 freememory()的疑问 java文件类使用示例怎么不能把文件读出来呢? 怎么实现jsp中的table框中的数据鼠标移到其中一行时在行尾显示按钮,移开按钮隐藏 Applet在网页中如何实现粘贴功能? -sourcepath问题
[] 代表一个字符....
| 代表或
? 代表前面内容出现一次或0次...
(\\d+(\\.\\d+)?)|(\\.\\d+) 代表是符点数或整数 或点后面一个整数
() 里面是一个整体.一般都是一个字符串
\\d 代表数字
+ 代表出现一次或多次.....
\\. 代表一个小数点"[+|-]?(\\d+(\\.\\d+)?)|(\\.\\d+) 从整体看.....这个匹配的主要是(\\d+(\\.\\d+)?)
前央[+|-]是可有可无的...后面又是个或....
而这一问分中(\\.\\d+)?又是可无的..所以只要和\\d+ 匹配就行了...
第一个就这样分析..以后的你自己分析吧
3匹配,而3.不匹配
对于[+|-]?(\\d+(\\.\\d*)?)|(\\.\\d+),来看(\\.\\d*)==>如果出现了.,那么不必出现任何数字==>3.匹配(当然,3也是匹配的,
不过Regex使用的是贪婪匹配)
对于[+|-]?(\\d+\\.?\\d+)|(\\.\\d+),很显然,3是不能完成匹配的.
ps:这可能是你要的:
[+-]?(\\d+(\\.\\d+)?|\\.\\d+)