Javascript错误正则表达式不是函数
Javascript error regex not a function?
我在网上找到了一些代码(stackoverflowhttps://stackoverflow.com/a/5774234/150062)这正是我所需要的。但我似乎无法让它运转起来。我收到一个错误"'/(''d+)''s*(second|min|minute|hour)/g' is not a function (evaluating 'regex(s)')";
var timespanMillis = (function() {
var tMillis = {
second: 1000,
min: 60 * 1000,
minute: 60 * 1000,
hour: 60 * 60 * 1000 // etc.
};
return function(s) {
var regex = /('d+)'s*(second|min|minute|hour)/g, ms=0, m, x;
while (m = regex(s)) {
x = Number(m[1]) * (tMillis[m[2]]||0);
ms += x;
}
return x ? ms : NaN;
};
})();
我也从来没有听说过这个regex()
函数?它应该是别的东西吗?
这在过去是可能的,您可以将调用替换为exec
,以实现完全相同的机制:
m = regex.exec(s)
请参阅http://whereswalden.com/2011/03/06/javascript-change-in-firefox-5-not-4-and-in-other-browsers-regular-expressions-cant-be-called-like-functions/
我认为
regex.match(value)//or regx.exec(value)
是您正在寻找的功能
regex是RegExp对象,而不是函数。这里列出了正则表达式的方法和函数方法和用法
如果匹配不起作用,请使用类似的tryout.test()方法
var match = /sample/.test("Sample text")
或
var match = /s(amp)le/i.exec("Sample text")
相关文章:
- 调用正则表达式匹配的函数
- 是否有任何Javascript函数从指定的索引中进行正则表达式匹配
- 用正则表达式在js中进行函数修剪
- Javascript错误正则表达式不是函数
- 为什么当我在正则表达式中放置空格键时,我的 Javascript test() 函数失败了
- Javascript的split函数中的正则表达式
- Javascript:我在这里如何滥用正则表达式构造函数
- 正则表达式或函数,用于提取传递给函数的所有参数
- 在Javascript的递归函数中使用正则表达式进行解析
- 在php中,使用正则表达式的函数中的Onclick事件
- 如何使用正则表达式识别javascript函数
- 正则表达式回调函数只执行一次
- 如何使字符“[”和“]”作为正则表达式()函数中的模式
- 将函数调用与 JS 正则表达式匹配
- 正则表达式类似于Javascript中的参数函数
- 正则表达式中的 test() 函数
- AngularJS ng-pattern 函数,带有正则表达式和年份输入字段的日期
- 用于查找函数字符串 javascript 的正则表达式
- 尝试使用正则表达式匹配代码中的函数声明
- 在asp.Net中调用java脚本函数正则表达式验证器失败