我正在创建一个wordpress站点,并且已经从以前的站点导入了产品,但是大多数产品的开头都有一系列的div和table标签(最后还有结束标签)。例如:
<div align="center">
<div id="innerwrapper">
<div id="canvas" style="width: auto; padding: 1%; margin-left: autopx; margin-right: autopx; auto 0px; background: #E3F9FF; border-radius: 5px 25px 5px; box-shadow: #888888 0px 0px 1.25em;" align="center">
<table style="width: 90%; margin-left: 3px; margin-right: 3px; align: center;">
<tbody>
<tr>
<td>
<div align="center">
<div id="innerwrapper">
<div id="canvas" style="width: auto; padding: 3%; background: #ffffff; border-radius: 25px; box-shadow: #888888 0px 0px 0em; text-align: center;" align="top">
{Product Information}
</div>
</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
由于我只是在{productinformation}部分之后(通常,但并不总是以h2标记开始,并且没有标准结束),因此我猜我可以使用:
UPDATE `wp_posts`
SET `post_content = RIGHT(`post_content`,LENGTH(`post_content`)-INSTR(`post_content`,'<div id="canvas" style="width: auto; padding: 3%; background: #ffffff; border-radius: 25px; box-shadow: #888888 0px 0px 0em; text-align: center;" align="top">')-158)
WHERE `post_content` LIKE '%<div id="canvas" style="width: auto; padding: 3%; background: #ffffff; border-radius: 25px; box-shadow: #888888 0px 0px 0em; text-align: center;" align="top">%'
因为这将找到最后一个打开的div标签,并从右侧获取内容。然而,我无法找出结束标签,因为有通过产品信息和有一个偶然的文本后,最后一个和一个
/ 每隔一段时间。
我想我的问题是,即使我需要使用通配符来获取大多数结束标记,我也能获取结束标记的索引/指令吗?
1条答案
按热度按时间6za6bjd01#
检查此代码是否适用于您的mysql版本:
我已将标记图案缩短为
'align="top">'
-但如果需要,你可以把它放回去。我用过'</div>'
作为终结标记-如有需要可更改。