我想要的是:
假设我使用如下查询搜索“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/