Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
419 views
in Technique[技术] by (71.8m points)

asp.net - Regex to match url not for certain file types

I want my Regex to match all valid URLs that do not end with

.gif
.jpg
.jpeg
.pdf
.doc

I tried

http(s)?://([w-]+.)+[w-]+(/[w- ./?%&=;]*)?((?!jpg)|(?!gif)|(?!doc))
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You need to use a lookbehind for that, try

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

You need also the anchor $ at the end, it matches the end of the string, that is important to define clearly the point from where the lookbehind should look behind.

See it here on Regexr


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...