相关疑难解决方法(0)

Javascript regexp文字和构造函数之间的差异

在一位开发人员将RegExp文字改为构造函数调用后,我们最近遇到了一个错误,我想知道为什么会有任何差别.确切的代码是

var parts = new RegExp("/rt:([^@]+)@(\d+)/").exec(tag);
Run Code Online (Sandbox Code Playgroud)

与原来的

var parts = /rt:([^@]+)@(\d+)/.exec(tag);
Run Code Online (Sandbox Code Playgroud)

tag是,例如rt:60C1C036-42FA-4073-B10B-1969BD2358FB@00000000077,第一(童车)调用返回null,而第二个返回["rt:60C1C036-42FA-4073-B10B-1969BD2358FB@00000000077", "60C1C036-42FA-4073-B10B-1969BD2358FB", "00000000077"]

毋庸置疑,我恢复了这一变化,但我想知道为什么首先会出现这样的差异.

javascript regex

21
推荐指数
1
解决办法
5791
查看次数

为什么这两个正则表达式的行为不一样?

我试图用这样的构造函数语法创建一个正则表达式new RegExp('\bword\b', 'g'),但它没有按预期运行.相反,它似乎创建一个看起来像这样的正则表达式,/\bwor\b/g缺少最后一个字母.

我必须使用构造函数语法来创建正则表达式,因为我从json文件动态创建,并且您不能将正则表达式放在json中.所以我的问题是:

一个.为什么这些表现不一样?和b.我该怎么做才能纠正这种情况?

注意:我尝试做的是创建一个仅与整个单词匹配的正则表达式,而不是另一个单词中存在的单词.

javascript regex

3
推荐指数
1
解决办法
154
查看次数

标签 统计

javascript ×2

regex ×2