我正在使用以下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" />
谢谢你的帮助。
答案 0 :(得分:0)
根据this链接:
目前REPLACE函数不支持正则表达式,所以如果 你需要用你需要使用MySQL的模式替换文本字符串 来自外部库的用户定义函数(UDF),请在此处查看 MySQL UDF with Regex
在链接的首页上说:
该软件包将正则表达式函数实现为MySQL用户 定义函数(UDF)。此包实现的功能 是:
- REGEXP_LIKE(text,pattern [,mode])
- REGEXP_SUBSTR(text,pattern [,position [,occurence [,mode]]])
- REGEXP_INSTR?(text,pattern [,position [,occurence [,return_end [,mode]]]])
- REGEXP_REPLACE?(text,pattern,replace [,position [,occurence [,return_end [,mode]]])
您最有可能对REGEXP_REPLACE感兴趣。