Javascript数字正则表达式测试失败-无法找出原因
Javascript number regex test failing - can't figure out why
这是一个jsFiddle: jsFiddle
相关代码:var number = /'d+(.'d+)?/g;
$('body').append(number.test(2.5) + "<br>");
$('body').append(number.test(20) + "<br>");
$('body').append(number.test(2) + "<br>");
输出true
false
true
去掉g
。这是不需要的,而且它会导致regex失败,因为RegExp对象会根据之前的匹配跟踪它的位置:https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/RegExp/test
http://jsfiddle.net/BUpyd/1/与exec(或与exec结合使用)一样,在同一个全局正则表达式实例上多次调用test将超越前一个匹配。
相关文章:
- 正则表达式与数字中的第二个点匹配
- 正好包含2个大写字母和3个数字的正则表达式
- 键按下上的正则表达式 仅限制数字
- 使用正则表达式匹配长度为六个字符的字母数字字符串
- 为什么这个正则表达式不't匹配最后一个字母数字字符
- 正则表达式(JavaScript),用于创建数字必须大于x的数据验证
- 用于删除紧跟在非数字后面的零的正则表达式
- XXXXXX的正则表达式.XX格式的数字
- 将字符串拆分为数值和非数字正则表达式
- 将分数替换为分数正则表达式,将数字替换为数字正则表达式
- Javascript字母数字正则表达式不采用换行符
- Javascript仅输入数字正则表达式
- 数字正则表达式导致jshint'错误或不必要的转义'错误
- 字母数字正则表达式javascript
- JavaScript:查找匹配的数字正则表达式
- Javascript数字正则表达式测试失败-无法找出原因
- 欧洲数字正则表达式
- 如何在数字正则表达式中允许空格
- Javascript:如何检查字符串中是否存在两个数字?(正则表达式)
- 匹配字符串部分并检索非邻近数字正则表达式