php - 在 PHP 中,使用 "LIKE"从 MySQL 搜索结果中获取整个单词

标签 php mysql regex search

我想要的是: 假设我使用如下查询搜索“goo”:...WHERE message LIKE '%goo%' 它返回了一个结果,例如 I love Google to make我的搜索,但我开始担心隐私,所以它会作为结果显示,因为单词 Google 符合我的搜索条件。

如何根据我的搜索字符串将整个 Google 结果保存到变量中? 我需要这个,因为我使用的是一个正则表达式,它会突出显示搜索到的词并显示结果前后的内容,但它只有在搜索到的词与结果中的词完全匹配时才有效,而且它的结构是错误的,所以它赢了' 与没有被空格包围的词配合得很好。

这是正则表达式代码

<?=preg_replace('/^.*?\s(.{0,'.$size.'})(\b'.$_GET['s'].'\b)(.{0,'.$size.'})\s.*?$/',
            '...$1<strong>$2</strong>$3...',$message);?>

我想要的是将此 $_GET['s'] 更改为我的变量,该变量将包含在我的查询字符串中找到的整个单词。

我如何实现这一点?

最佳答案

我打赌更改您的正则表达式以检查包含该术语的任何单词会更容易,怎么样:

<?=preg_replace('/^.*?(.{0,'.$size.'})(\b\S*'.$_GET['s'].'\S*\b)(.{0,'.$size.'}).*?$/i',
            '...$1<strong>$2</strong>$3...',$message);?>

关于php - 在 PHP 中,使用 "LIKE"从 MySQL 搜索结果中获取整个单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16067272/

相关文章:

php - 如何计算网站的唯一身份访问者?

python - %d 格式为数字,不是字符串

regex - 正则表达式实现实际上需要 split() 函数吗?

jquery - mysql 中 6 行自动完成的问题

regex - 在 sed 中插入换行符 (Mac OS X)

c# - 使用正则表达式提取特定值

php - 向表格添加滚动条并限制最多 10 个结果

php - 从日期表中获取最接近可用时间范围的算法或 SQL

php - 将表单 POST 提交到另一个页面,但在重定向之前进行验证,如果验证失败,则保留在同一页面上

mysql - mysql中通过循环从两个表中选择数据