我正在尝试匹配 SMF 论坛中的内部链接,并将 BBC 标记从url转换为iurl,以便这样的链接:
[url=https://www.translatum.gr/forum/index.php?topic=989144.0]κατ' ἐπιταγήν -> by way of command[/url]
会变成 :
[iurl=https://www.translatum.gr/forum/index.php?topic=989144.0]κατ' ἐπιταγήν -> by way of command[/iurl]
我在 PhpMyAdmin 上尝试过这样的事情(使用 MariaDB 10.3)
UPDATE smf_messages SET body = REGEXP_REPLACE(body, '(\[url=https:\/\/www\.translatum\.gr)(.*?)(\[\/url\])', '[iurl=https://www.translatum.gr\\2[/iurl]') WHERE ID_TOPIC = 987873
尽管似乎在 regex101 中的测试中起作用,但在 SQL 上给出了垃圾输出(即,它被链接及其文本的多次迭代替换)。我已将此用于语法参考