5

我有一个链接。例如:http://my.domain/url.jsp

我的目标是创建不允许任何带有这样扩展名的 URL 的模式:.ex1, .ex2, .ex3

我搜索了很长时间并找到了一些方法,但这与我想要的完全相反。

([^\s]+(\.(?i)(ex1|ex2|ex3))$) 
4

1 回答 1

4

如果支持lookbehind,那么这个正则表达式应该可以工作:

^\S+$(?<!\.(?:ex1|ex2|ex3)$)

现场演示:http ://www.rubular.com/r/gQDxYdDKcU

如果不支持lookbehind(例如Javascript),那么使用这个基于lookahead的正则表达式:

^(?!.*?\.(?:ex1|ex2|ex3)$)\S+$

现场演示:http ://www.rubular.com/r/S0FGAETLr2

于 2013-07-26T16:51:05.430 回答