2

任何人都可以解释以下示例代码吗?它来自这里的最后一个例子。

不知道为什么'\'之前没有'.',通过添加可以得到相同的结果'\'

JavaScript:

var url = "http://xxx.domain.com";
print(/[^.]+/.exec(url)[0].substr(7)); // prints "xxx"
4

2 回答 2

5

获取第一个句点的字符,然后删除前 7 个,即 http://,这样您就可以看到域的第一部分,在这种情况下是xxx.

[^.]+表示一个或多个不是句点的字符,因此匹配http://xxx. 不,句点不需要在括号内转义以被视为普通字符,因为它在括号内没有特殊含义。

[0]表示整个比赛是http://xxx

.substr(7)表示获取前 7 个之后的字符,这将是xxx

于 2013-08-08T04:49:24.763 回答
5

请注意此处有关字符类中的元字符的段落

请注意,字符类中唯一的特殊字符或元字符是右括号 (])、反斜杠 (\)、插入符号 (^) 和连字符 (-)。通常的元字符是字符类中的普通字符,不需要用反斜杠转义。

于 2013-08-08T04:50:14.643 回答