在保留内部文本的同时在phpmyadmin中替换字符串

时间:2014-01-15 10:13:54

标签: mysql replace phpmyadmin

我需要在mysql数据库中更改一些html条目。我的问题是需要更换某些标签,而周围的代码需要保持不变。详细说明:所有带有“kopf”类的tr-tags中的td-tags需要更改为th-tags(以及标签的附加关闭)

没有结束标签就不会有问题..

update `tt_content` set `bodytext` = replace(`bodytext`,'<tr class="kopf"><td colspan="2">','<tr><th colspan="2">');

这会起作用

从我发现使用%-sign,但究竟是怎么回事?:

update `tt_content` set `bodytext` = replace(`bodytext`,'<tr class="kopf"><td colspan="2">%</td></tr>','<tr><th colspan="2">%</th></tr>');

我想这会用%-sign替换旧td标签中的所有代码?我怎样才能实现所需的更换?

编辑:只是为了澄清这里的事情是db中的一个可能的条目:

<table class="techDat"  > <tbody> <tr class="kopf"> <td colspan="2"> <p><strong>Technical data:</strong></p> </td> </tr> <tr> <td> <p>Operating time depending on battery chargeBetriebszeit je Akkuladung</p> </td> <td> <p>Approx. 4 h</p> </td> </tr> <tr> <td> <p>Maximum volume</p> </td> <td> <p>Approx. 120 dB(A)</p> </td> </tr> <tr> <td> <p>Weight</p> </td> <td> <p>Approx. 59 g</p> </td> </tr> </tbody> </table>
更换mysql后,它应该看起来像

<table class="techDat"  > <tbody> <tr> <th colspan="2"> <p><strong>Technical data:</strong></p> </th> </tr> <tr> <td> <p>Operating time depending on battery chargeBetriebszeit je Akkuladung</p> </td> <td> <p>Approx. 4 h</p> </td> </tr> <tr> <td> <p>Maximum volume</p> </td> <td> <p>Approx. 120 dB(A)</p> </td> </tr> <tr> <td> <p>Weight</p> </td> <td> <p>Approx. 59 g</p> </td> </tr> </tbody> </table>

2 个答案:

答案 0 :(得分:1)

尝试两次替换

update `tt_content` set `bodytext` = 
replace(replace(`bodytext`,
'<tr class="kopf"><td colspan="2">','<tr><th colspan="2">'),
'</td></tr>','</th></tr>')

答案 1 :(得分:0)

尝试使用两个查询更新记录: 1)没有%符号: update {tt_content {1}} {bodyText的{1}} {bodyText的{1}}

2)for%sign

set tt_content = replace( bodytext ,'<tr class="kopf"><td colspan="2">','<tr><th colspan="2">'); bodytext update;