Regex 找到正则表达式以保持url图像不为空
我希望从字符串变量获取URL,但仅获取文件名为Regex 找到正则表达式以保持url图像不为空,regex,Regex,我希望从字符串变量获取URL,但仅获取文件名为blank 例如,对于此变量: <img class = "lazythumb" src = "http://mytinywebsite.com/test/blank.gif" original = "http://mytinywebsite.com/test/test.jpg" alt = ""> 我被放置了一个正则表达式:(^https | http:\/\/*\(:..?png | jpg)),它允许我检索以http或https开
blank
例如,对于此变量:
<img class = "lazythumb" src = "http://mytinywebsite.com/test/blank.gif" original = "http://mytinywebsite.com/test/test.jpg" alt = "">
我被放置了一个正则表达式:(^https | http:\/\/*\(:..?png | jpg))
,它允许我检索以http或https开头的两个url:
我有一个结果:
“原件=”
现在我想要一个表达式,它只返回不包含blank
在我的示例中:我希望得到如下结果
您可以限制url中的
不为空
,并具有负前瞻性:
(https?:\/\/(?![^"]*blank[^"]*)[^"]*(?:png|jpg))"
如果您只想过滤“空白”的文件名,后面会有一个负面的外观,则会更干净一些:
(https?:\/\/[^"]*(?<!blank)(?:png|jpg))"
(https?:\/\/[^”]*(?使用此选项:
[\w:\/.-]+(?<!blank)\.(?:gif|jpg|jpeg|png)
[\w:\/.-]+(?
此处演示:
是文件扩展之前总是写的空白,即在.gif或jpeg ETyes之前,总是在文件扩展之前写的空白。例如,在gif或jpeg Etxc之前,如果在开始时没有双引号的话:只要从表达式开始删除(我也会更新我的答案)。
[\w:\/.-]+(?<!blank)\.(?:gif|jpg|jpeg|png)