我遇到了一些遗留代码,我们正在尝试使用 javascript 正则表达式对字符串进行完全匹配。
我试图了解他们为什么在匹配字符串之前和之后使用 / 。
例子
var match = thinger.match(/stringToMatch/);
这个角色是做什么的?
我遇到了一些遗留代码,我们正在尝试使用 javascript 正则表达式对字符串进行完全匹配。
我试图了解他们为什么在匹配字符串之前和之后使用 / 。
例子
var match = thinger.match(/stringToMatch/);
这个角色是做什么的?
/regex here/
是一种在 javascript 中声明正则表达式的方法。
字符是正则表达式声明的/
分隔符,就像单引号或双引号是字符串声明的分隔符一样。
有关书面说明,请参阅MDN 正则表达式参考页面。正则表达式可以在 javascript 中以以下两种方式之一声明:
var re = /match string here/i;
var re = new RegExp("match string here", "i");
使用该/regex here/
方法的优点是:
/
在使用此方法时您必须在 reg中转义 a使用该new RegExp("regex here")
方法的优点是:
new RegExp("first" + foo + "whatever")
而其他方法无法做到这一点。它是正则表达式的分隔符。就像您可以通过键入'string'
而不是调用其构造函数来创建新的原始字符串一样,因此您可以使用而不是new String('string')
指定 RegExp 。/regexp/
new RegExp('regexp')
它们是指定正则表达式开头和结尾的分隔符。您还可以附加诸如 /i 之类的运算符以使正则表达式大小写独立。