微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

正则表达式 – 正则表达式:仅在不以特定顺序结束时进行匹配

我想测试一个不以.html结尾的网址

这是我想出的模式:

[/\w\.-]+[^\.html$]

以下匹配,因为它不会以.html结尾

/blog/category/subcategory/

这不符合,因为它以.html结尾:

/blog/category/subcategory/index.html

但是,以下不匹配,尽管我希望它匹配,因为它以.ht而不是.html结尾

/blog/category/subcategory/index.ht

我该怎么改变我的模式?

如果您的正则表达式引擎支持它,则可以使用负的lookbehind断言:
^[/\w\.-]+(?<!\.html)$

如果你没有看起来的断言,但你有头脑,那么你可以改用它:

^(?!.*\.html$)[/\w\.-]+$

看到它在线工作:rubular

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐