0

我有一个包含 400k 个帖子的 mysql 数据库。在 arround 100k 帖子中是图像。例子:

text text text <img src="/images/test.jpg"> text text text

<img src="/images/test.jpg">必须删除完整的图像字符串。但它并不总是<img src/images/test.jpg">有很多变体。所以我不能使用典型的 sql replace 。

我需要的是“两个字符之间的 sql 替换”。对我来说,删除/替换所有"<img" and ">" 内容<img and >

这还是可能的吗?谢谢

4

1 回答 1

0

MySQL 支持正则表达式:

UPDATE Mytable SET url = '' WHERE url RLIKE someregex;

见:http ://dev.mysql.com/doc/refman/5.1/en/regexp.html

就像是:

UPDATE Mytable SET url = '' WHERE url RLIKE '\\<img.\\>'

但请注意,MySQL 不支持正则表达式错位字符串的输出。它只会比较。

但是,有一个 MySQL 用户函数 REGEX_REPLACE,请参阅:https
://launchpad.net/mysql-udf-regexp 另请参阅此问题:如何在 MySQL / 正则表达式替换器中计算单词?

于 2013-02-10T09:58:59.427 回答