gpt4 book ai didi

php - MySQL 数据库中字符串替换的正则表达式

转载 作者:行者123 更新时间:2023-11-29 11:58:42 25 4
gpt4 key购买 nike

我最近升级了论坛的 IPB 版本,但报价未升级,并且 IPS 未提供我需要的支持。

我需要构建一个正则表达式来查找和替换

例如,这是旧的论坛格式:

<div class="quotetop">QUOTE(Cleber__v @ Apr 14 2015, 12:25 PM)
<a href="index.php?act=findpost&amp;pid=2778161">&lt;{POST_SNAPBACK}&gt;
</a></div><div class="quotemain"><!--quotec-->
TEXT TO BE KEPT
<!--QuoteEnd-->
</div><!--QuoteEEnd-->

这是它应该采用的新格式:

`<div>
<blockquote class="ipsQuote"
data-cite="Em 14/04/2015, (Cleber__v disse:" data-ipsquote=""
data-ipsquote-timestamp="1428004301" data-ipsquote-userid="2350"
data-ipsquote-username="Cleber__v" data-ipsquote-contapp="forums"
data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic"
data-ipsquote-contentid="105179" data-ipsquote-contentcommentid="2768819">
TEXT TO BE INSERTED</blockquote></div><p><span>​</span></p>`

所以我需要找到内容,保存用户名、postID(或commentid)、时间和文本,并将其替换为正确的格式。

我已经研究正则表达式大约一周了,但没有成功地实现这一点

有人可以帮忙吗?谢谢

最佳答案

您应该自己尝试并向我们提供您尝试过的正则表达式,但这是您的第一步:

.*?>QUOTE\((?P<name>.*)\ \@\ (?P<date>[^\)]+).*?pid\=(?P<pid>[0-9]*).*?\<\!\-\-quotec\-\-\>(?P<text>.*?)\<\!\-\-QuoteEnd\-\-\>

在这里查看它是如何工作的:https://regex101.com/r/dM0eG3/1以及匹配信息如何满足您的需求。

NB : you must remove all new line characters before applying this regex, but this is fairly easy to do in PHP or in any language you might use to create your db upgrade script.

这将从您的文本中提取所有相关信息将它们替换为新格式作为读者的练习。

关于php - MySQL 数据库中字符串替换的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32754298/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com