gpt4 book ai didi

mysql - 如何在 Mysql 字段中搜索字符串而忽略该字段中的任何特殊字符?

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

假设我有搜索字符串 'mens health' 并且在我的数据库中我有值为 'men's health' 的字段,我如何使用正则表达式将我的搜索字符串与此匹配?请记住,这只是一个示例,在我的数据库中有许多记录也包含任意数量的非字母字符,例如“/,$,',-,(,),1,2...”?搜索字符串是从 URL 中获取的,不应包含任何易于阅读的编码。

最佳答案

我最终创建了一个生成正则表达式字符串的小函数,我在我的 MySQL 查询中将其与 RLIKE 一起使用,它应该匹配字母数字字符的序列,而不管字母之间的任何特殊字符。

function GenerateCategoryRegex($SrchTerm) {
$arrChar = str_split(str_replace(' ', '', $SrchTerm));
$RegEx = '(^|;)+[[:space:]]*';
foreach($arrChar as $Char) {
$RegEx .= $Char . '{1}[^\w,]*';
}
$RegEx .= '[[:space:]]*(;|$)+';

return $RegEx;
}

关于mysql - 如何在 Mysql 字段中搜索字符串而忽略该字段中的任何特殊字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42649347/

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