1

我有一个带有 mysql 数据库的 Wordpress 博客。我最近不得不更改一个用于格式化代码的插件,因此,我面临着用另一个子字符串替换特定字段中多行中的子字符串的前景。

搜索文本为:<pre class="lang:default decode:true ">

替换它的文本是:[code]

包含子字符串的列(字段)是:post_content

我目前所做的是使用 phpmyadmin,查找文本,将所有行导出到 sql 转储,对转储文件执行 sed,然后重新导入。子字符串是较大字符串的一部分(根据定义),不应干扰字符串的其他元素。

我想学习如何使用 mysql 来做到这一点,而无需处理转储。

在尝试了 mzedeler 的解决方案后,我发现有些表达式包含 <pre class="lang:default decode:true">而不是<pre class="lang:default decode:true ">(一个在 true 之后有一个额外空格的表达式)。如何进行正则表达式搜索,然后替换为预期的字符串?

4

1 回答 1

2
UPDATE <my table>
   SET post_content = REPLACE(
       post_content,
       '<pre class="lang:default decode:true ">',
       '[code]'
   )
于 2013-06-27T19:08:58.140 回答