Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 正则表达式:匹配除以控制组结尾的字符串以外的所有内容_Regex - Fatal编程技术网

Regex 正则表达式:匹配除以控制组结尾的字符串以外的所有内容

Regex 正则表达式:匹配除以控制组结尾的字符串以外的所有内容,regex,Regex,我正在抓取一些网站,我想放弃对基于正则表达式的常见img文件的调用。正则表达式函数应该是 匹配除以.jpg、.png、.gif结尾的URL字符串以外的所有内容 示例: www.example.com/test.jpg www.example.com/test2.png 我试过这么做 .*(?:(?!\.(jpg|png|gif)))$ 但是没有任何成功你试图构建的正确的负面展望是 (?!.*\.(?:jpg|png|gif)$) 如果字符串以jpg、png或gif结尾,则它将拒绝该字符串,并

我正在抓取一些网站,我想放弃对基于正则表达式的常见img文件的调用。正则表达式函数应该是

匹配除以.jpg、.png、.gif结尾的URL字符串以外的所有内容

示例:

www.example.com/test.jpg www.example.com/test2.png 我试过这么做

.*(?:(?!\.(jpg|png|gif)))$

但是没有任何成功

你试图构建的正确的负面展望是

(?!.*\.(?:jpg|png|gif)$)
如果字符串以jpg、png或gif结尾,则它将拒绝该字符串,并且您需要使用的全部正则表达式是:

^(?!.*\.(?:jpg|png|gif)$).+$
还有,正则表达式的问题。*?:?!\。jpg | png | gif$is,.*将贪婪地消耗所有内容,不会在前面留下任何字符,因此您的负前瞻性将始终满足true,因为在这之后将不会留下任何字符,在这些字符的基础上,负前瞻性可以拒绝您的字符串。因此,您需要在负片中移动。*以检查.jpg或.png或.gif之前的任何其他字符是否允许为零或更多