我有以下正则表达式,它在遇到哈希时需要停止匹配。
正则表达式:
/[?&]+([^=&]+)=([^&]*)/gi
网址示例:
http://website.com/1068?page=4&taco=cat#tasty
上面的正则表达式将捕获cat#tasty
而不是仅cat
在最后一个捕获组中。我尝试了以下仅在存在哈希时才有效。
正则表达式测试:
/[?&]+([^=&]+)=([^&]*)#/gi
如果 url 没有哈希,它将不匹配。使哈希成为可选的——#?
也不起作用,因为*
最后一个捕获组的贪婪仍然抓住了cat#tasty
.