Notepad ++(REGEX);反转选择,
以下2个不同的代码,效果非常好。 :) 现在我想结合这两个不同的代码!
\bhttps?:[^)''"\s]+\.(?:jpg|jpeg|gif|png)
https://codereview.stackexchange.com/questions/20126/regex-to-get-all-image-links
^((?!hello).)*$
答案 0 :(得分:1)
确保您使用的是最新版本的notepad ++,其中已知问题在notepad ++ v5中使用正则表达式,之前已在v6中更正过。
<img(?=\s|>)(?=(?:[^>=]|='[^']*'|="[^"]*"|=[^'"][^\s>]*)*?\ssrc=(['"]?)(.*?)\1(?:\s|>))(?:[^>=]|='[^']*'|="[^"]*"|=[^'"][^\s>]*)*>
来自Notepad ++
按 ctrl F 进入查找和替换 模式
选择正则表达式选项
选择“。匹配换行符”选项
在“查找内容”字段中放置以下正则表达式
<img(?=\s|>)(?=(?:[^>=]|='[^']*'|="[^"]*"|=[^'"][^\s>]*)*?\ssrc=(['"]?)(.*?)\1(?:\s|>))(?:[^>=]|='[^']*'|="[^"]*"|=[^'"][^\s>]*)*>
点击查找全部
示例文字
注意前两个图像标签有一些非常困难的边缘情况
<img onmouseover=' img = 10; src="NotYourImage.png" ; if (3 <img && src="NotYourImage.png" && 6>3) { funRotate(src) ; } ; ' src="ImageYouAreLookingFor.png">
<img onmouseover=' src="NotTheDroidsYouAreLookingFor.png" ; if (x > 3) { funRotate(src); } ' src="http://another.example/picture.png">
<img src="./CaptchaServlet?rd=htb54m" class="flt" id="captcha" height="33" width="110"/>
<强>匹配强>
组0获取整个图像标签
第1组获取用于包围src属性的引用,用于确保正确的结束引用匹配
第2组获取src值,或者如果使用上面的备用正则表达式,则只接收rd查询字符串
[0][0] = <img onmouseover=' img = 10; src="NotYourImage.png" ; if (3 <img && src="NotYourImage.png" && 6>3) { funRotate(src) ; } ; ' src="ImageYouAreLookingFor.png">
[0][1] = "
[0][2] = ImageYouAreLookingFor.png
[1][0] = <img onmouseover=' src="NotTheDroidsYouAreLookingFor.png" ; if (x > 3) { funRotate(src); } ' src="http://another.example/picture.png">
[1][1] = "
[1][2] = http://another.example/picture.png
[2][0] = <img src="./CaptchaServlet?rd=htb54m" class="flt" id="captcha" height="33" width="110"/>
[2][1] = "
[2][2] = ./CaptchaServlet?rd=htb54m