这个正则"http[s]?://www.sina.com.cn/(?:[a-zA-Z]|[0-9]|[$-_.&+]|(?:%[0-9a-fA-F][0-9a-fA-F]))+"
为什么会匹配到“http://www.sina.com.cn/js/67/sinaindex/2013/gd.js';”,为什么最后会有"';"?
这个正则"http[s]?://www.sina.com.cn/(?:[a-zA-Z]|[0-9]|[$-_.&+]|(?:%[0-9a-fA-F][0-9a-fA-F]))+"
为什么会匹配到“http://www.sina.com.cn/js/67/sinaindex/2013/gd.js';”,为什么最后会有"';"?
同意楼上的答案,连字符在字符组中如果不是在开始的位置是有特殊意义的
如[a-z]
和[0-9]
这种,如果希望字符组能够匹配连字符,应该将连字符放到字符组的首位。
如:[-$_.&+]
2 回答4.3k 阅读✓ 已解决
2 回答858 阅读✓ 已解决
1 回答4.1k 阅读✓ 已解决
3 回答848 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
4 回答2.5k 阅读
3 回答899 阅读✓ 已解决
附上从字符$到字符_的字符集:
