我跟随正则表达式匹配网址:
/(https?:\/\/[^"<\s]+[^.<\s"()][-A-Za-z0-9+&@#\/%=~_|])(?![^<>]*>|[^"]*?<\/a)/gi
谁匹配两个网址:
http://example.fr/image.png
http://example.fr/image.pdf
这是我们应用程序的特定正则表达式,我希望保留它,但只需添加一个功能。
问题:我想忽略以.png
结尾的网址。
有可能吗?
答案 0 :(得分:2)
在结尾使用负面的lookbehind,并强制它匹配整个字符串:
var arr = ["cinema"];
arr[1].sort();
console.log(arr[1]);
如果当前位置不在匹配(https?:\/\/[^"<\s]+[^.<\s"()][-A-Za-z0-9+&@#\/%=~_|])(?![^<>]*>|[^"]*?<\/a)(?<!\.png)$
的匹配项之前,则负向后视(?<!\.png)
是零宽度匹配。
\.png
强制正则表达式匹配整行。