0

我正在使用以下 SQL 查询在 phpMyAdmin 中批量查找和替换。

UPDATE `table_name` SET `field_name` = replace(same_field_name, 'unwanted_text', 'wanted_text')

当 'unwanted_text' 是一个常数时,这很有效。但是“unwanted_text”有可能成为两个常量之间的变量吗?

这是我的具体例子。

我想批量查找并替换它:

<img src="images/stills/variable_1.jpg" />
<img src="images/stills/variable_2.jpg" />
<img src="images/stills/variable_3.jpg" />

和:

<img src="images/stills/1_constant_filename.jpg" />

这两个常数是:

"images/stills/ 

.jpg" />

感谢您的帮助。

4

1 回答 1

0

根据链接:

目前 REPLACE 函数不支持正则表达式,因此如果您需要使用模式替换文本字符串,则需要使用外部库中的 MySQL 用户定义函数 (UDF),请在此处查看 MySQL UDF with Regex

在链接的首页上,它说:

此包将正则表达式函数实现为 MySQL 用户定义函数 (UDF)。该包实现的功能有:

  • REGEXP_LIKE(文本,模式 [,模式])
  • REGEXP_SUBSTR(文本,模式[,位置[,出现[,模式]]])
  • REGEXP_INSTR?(文本,模式[,位置[,出现[,return_end [,模式]]]])
  • REGEXP_REPLACE?(文本、模式、替换 [,位置 [,出现 [,return_end [,模式]]])

您很可能对 REGEXP_REPLACE 感兴趣。

于 2013-03-07T23:23:54.830 回答