mysql - 字符串替换查询指南

标签 mysql sql database

我正在尝试以编程方式在 WP_Posts > post_content 表中用新的短代码替换已弃用的 HTML。

目标:

替换

<span class="dropcap">%</span>

[dropcap class='post-dropcap']%[/dropcap]

其中 % 是行中的任意字符

还有另一个问题:我需要找到该代码开始的字符串位置,以便我可以将新字符串放在相同的起始位置,因为该字符串模式之前有内容。我还需要存储每行的字符 %,因为每行根据其输入的单词具有不同的字符。

我假设我需要获取匹配字符串的“<”的 strpos() 。

然后,我可以将标签之间的值存储在别名中。

然后,我需要删除匹配的字符串,并将其替换为新代码,使用别名引用之前删除的字符。

最佳答案

您可以通过执行以下操作来获取 % 值:

select substring_index(substring_index(col, '<', -1), '>', 1) as central_value

然后您可以连接以获得您想要的内容:

select concat('[dropcap class=''post-dropcap'']',
              substring_index(substring_index(col, '<', -1), '>', 1),
              '[/dropcap]'
             )

关于mysql - 字符串替换查询指南,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53207775/

相关文章:

php - MySQL根据月份选择数据并将它们加在一起(最好在ZEND中)

mysql - 不等于 <> 查询排除 NULL 值

mysql - SQL查询帮助: Getting counts based on combination of columns

sql - 使用 row_number 添加组 ID 列

mysql - 在 mysql if 语句中使用来自另一个表的列

sql - 如何在 SQL Developer 中将多个表中的数据导出到多个 .TXT 文件中

java - 如何创建 JSP 页面和共享数据库连接

php - Laravel 如果数据库表为空

尽管使用内容提供程序和顺序数据库访问,android sqlite "database is locked"错误

mysql - 使用带 ORDER 子句的 AES_DECRYPT 在 MySQL 中返回的 BLOB 数据