我需要用文本替换下面的url(包括img标签)。我对正则表达式不太满意......正如你可以看到它的动态日期,它以两种不同的方式结束: 使用 alt =“;)”> ,有时使用 class =“wp-smiley”/>
<img src="http://thailandsbloggare.se/wp-content/uploads/2012/10/icon_wink.gif" alt=";)">
有时最后会有class =“wp-smiley”
<img src="http://thailandsbloggare.se/wp-content/uploads/2012/09/icon_wink.gif" alt=";)" class="wp-smiley" />
因此,无论何时发布此图像,我都希望将完整的字符串替换为文本“;)”
我设法为所有内容编写正则表达式,直到 alt =“;)”&gt; ,有时使用 class =“wp-smiley”/&gt; 但是然后我被困住了,压力需要一些OR功能。
<img src="http://thailandsbloggare.se/wp-content/uploads/20\d\d/\d+/icon_wink\.gif
以下回复后的更新信息
<img src="http://thailandsbloggare.se/wp-content/uploads/20[0-9]{2}/[01][0-9]/icon_wink.gif" alt=";\)" *(|class="wp-smiley")?>
和
两个都无法返回 class =“wp-smiley”/&gt; 包含的字符串
它是使用PHP在Wordpress中构建的网站,我正在使用http://urbangiraffe.com/plugins/search-regex/
提前致谢!
答案 0 :(得分:0)
通常,在正则表达式中,您可以创建替代的子正则表达式:
(match this|or this)
在你的情况下
(alt=";\)"|class="wp-smiley")
如果alt =“;)”始终存在,请执行:
alt=";\)" *(|class="wp-smiley")
当然,我们不知道您使用的是哪种编辑器或编程语言,实际的正则表达式实现可能与上面的示例不同。
答案 1 :(得分:0)
尝试以下模式搜索:
<img src="http://thailandsbloggare.se/wp-content/uploads/20[0-9]{2}/[01][0-9]/icon_wink.gif" alt=";\)"(\sclass="wp-smiley")?>
请参阅您正在使用的正则表达式引擎支持的语法。但是,对于大多数引擎,上述模式应该有效。请注意用于日期范围的字符类,您应该适当地更改它。