gpt4 book ai didi

mysql - 正则表达式在 Mysql 中使用分隔符进行搜索

转载 作者:行者123 更新时间:2023-11-29 23:30:35 24 4
gpt4 key购买 nike

我正在尝试将在 PHP 中运行良好的正则表达式转换为 MySQL。MySQL 不允许负向预测 (?!) 所以我需要一个解决方案或解决方法

我的数据库列数据是这样的字符串:

title:The Book Title¬#¬description:The Book Description¬#¬Price:$10.57

我可以在 PHP 中使用的正则表达式是

(^|¬#¬)title:(((?!¬#¬).)*Book((?!¬#¬).)*)

但是在 MySQL 中我很挣扎。大家有什么意见或者建议

最佳答案

MySQL 无法将 REGEX 应用于 SELECT 子句中的 col 内容。

在这种情况下,您可以使用 SUBSTRING 函数来提取您的内容。

SELECT 
SUBSTRING_INDEX(
LEFT( content, LOCATE('?#?description', content)-1 ), 'title:', -1) AS title,
SUBSTRING_INDEX(
LEFT( content, LOCATE('?#?Price', content)-1 ), 'description:', -1) AS description,
SUBSTRING_INDEX(
RIGHT( content, LOCATE('?#?Price', content)-1 ), 'Price:', -1) AS price
FROM test_table

SQLFiddle

http://sqlfiddle.com/#!2/04e83/1

关于mysql - 正则表达式在 Mysql 中使用分隔符进行搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26605781/

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