【问题标题】:Regex to match url not for certain file types正则表达式匹配 url 不适用于某些文件类型
【发布时间】:2012-07-02 08:43:04
【问题描述】:

我希望我的正则表达式匹配所有不以

结尾的有效URL

.gif
.jpg
.jpeg
.pdf
.doc

我试过了

http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=;]*)?((?!jpg)|(?!gif)|(?!doc))

【问题讨论】:

  • 这不是一个“我们让你工作”的网站。您尝试了什么,遇到了什么问题?
  • @elshenawy000 - 欢迎来到 Stack Overflow。请阅读关于如何发布问题的常见问题解答。您需要展示您尝试过的内容,或者至少展示您调查过的内容。人们会帮助你——他们不会简单地为你工作。这个想法是最不合理的。
  • 我尝试了 lookahead 正则表达式选项并失败了 http(s)?://([\w-]+\.)+[\w-]+(/ [\w- ./?%&=;]*)?((?!jpg)|(?!gif)|(?!doc)) 等所有类型
  • 前瞻匹配任何网址,不仅是那些不包含不需要的类型的网址,我正在使用点网代码进行测试和 gskinner.com

标签: asp.net .net regex


【解决方案1】:

您需要为此使用lookbehind,试试

http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=;]*)?(?<!jpg)(?<!gif)(?<!doc)$

您还需要末尾的锚点$,它与字符串的结尾相匹配,这对于清楚地定义后视应该向后看的点很重要。

here on Regexr

【讨论】:

  • 非常感谢您抽出宝贵的时间stema
猜你喜欢
  • 1970-01-01
  • 2012-10-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-10
相关资源
最近更新 更多