-6

这两个在做什么有什么区别?谢谢

 var m = document.referrer.match(/\&cd=([\d]*)/);

var m = document.referrer.match(/cd=(.*?)&/);

哪一种更高效、更有效?

4

1 回答 1

3

/\&cd=([\d]*)/- 匹配任何以 "&cd=" 开头的字符串,后跟任何零个或多个十进制数字。第一个捕获组是十进制数字。

/cd=(.*)&/- 匹配任何以 "cd=" 开头的字符串,后跟零个或多个字符,直到并包括第一个 "&"。第一个捕获组是“cd=”和“&”之间的所有字符。

它们相似,但不等价。您应该使用哪一个取决于您的确切需求。从您的评论来看,听起来您想使用:

var m = document.referrer.match(/[?&]cd=(\d+)/);
于 2013-03-18T16:51:49.110 回答