我有一个wordpress导出旧帖子,这些帖子将被导入到不同的安装中。但是我有一个问题,其中有一部分内容需要在另一个安装中转换为不同类型的内容。
原始代码是这样的:
<a href="000d3c4c.mp3">000d3c4c</a>]]></content:encoded>
我需要把它变成这个
</content:encoded><wp:postmeta>
<wp:meta_key><![CDATA[mkd_post_audio_link_meta]]></wp:meta_key>
<wp:meta_value><![CDATA[000d2aa8.mp3]]></wp:meta_value>
</wp:postmeta>
我正在使用EditPad Pro搜索文件,并且为了防止我手动使用几个小时进行此更改,我无法在EditPad中使用广泛的搜索和替换功能,但是我在尝试匹配此问题时遇到了一些问题。我希望表达式是这样的。
首先搜索和替换无论如何都会有效,因为我可以改变
<a href="000
进入
</content:encoded>
<wp:postmeta>
<wp:meta_key>
<![CDATA[mkd_post_audio_link_meta]]></wp:meta_key><wp:meta_value>><![CDATA[000d2aa8.mp3]]></wp:meta_value>
</wp:postmeta>
但是我在接下来的部分很挣扎。 如何将.mp3之后的所有内容更改为此
]]></wp:meta_value>
</wp:postmeta>
简短说明。我想替换所有出现的
">000d3c4c</a>]]></content:encoded>
与
]]></wp:meta_value>
</wp:postmeta>
000d3c4c 对于每次出现的mp3链接都有所不同。
答案 0 :(得分:0)
匹配此
<a[^>]*>([^<]+)
并替换为
</content:encoded>
<wp:postmeta>
<wp:meta_key><![CDATA[mkd_post_audio_link_meta]]></wp:meta_key>
<wp:meta_value><![CDATA[$1.mp3]]></wp:meta_value>
</wp:postmeta>