3

我需要清理我们的数据库并需要大量替换这样的东西:

<div class="rtecenter"><br />
<font color="#990033"><strong>I'm so hot, I sometimes spontaneously combust.</strong></font><br />
<img src="http://i476.photobucket.com/albums/rr124/redacted/coollogo_com_63811610.gif" alt="" /></div>

(我只是要删除它的所有实例)。

我已经知道如何进行批量替换(我正在使用 PHPMyAdmin),但是问题是它有 CR/LF,所以我不确定如何添加正确的字符串以在查询中查找......只是为了测试,我尝试使用Char(10)Char(13)新行在哪里进行搜索,但没有返回任何结果,(我知道他们在那里)。

有人知道吗?

4

1 回答 1

4

如果只有 CR/LF,那么您可以使用此查询 -

UPDATE table
SET
  column = REPLACE(column, '<div class="rtecenter"><br />\r\n<font color="#990033"><strong>I''m so hot, I sometimes spontaneously combust.</strong></font><br />\r\n<img src="http://i476.photobucket.com/albums/rr124/redacted/coollogo_com_63811610.gif" alt="" /></div>', '');

如果有不同的行分隔符,那么您可以分两步进行:

UPDATE table
SET
  column = REPLACE(column, '\r', ''); -- replace all \r\n to \n

UPDATE table
SET
  column = REPLACE(column, '<div class="rtecenter"><br />\n<font color="#990033"><strong>I''m so hot, I sometimes spontaneously combust.</strong></font><br />\n<img src="http://i476.photobucket.com/albums/rr124/redacted/coollogo_com_63811610.gif" alt="" /></div>', '');
于 2012-02-22T09:13:49.780 回答