我想搜索字符串中是否有单词/短语(~max 300 char)并且我正在使用:
if (strpos($currentString,$searchWord) !== false) {
.....
}
该代码适用于完全匹配以及部分匹配,例如:搜索贝叶斯语中的单词贝叶,这很好。但问题是它还在扩散中找到融合中的搜索词。我想找出搜索词是整个单词还是字符串中单词的开头。当搜索词位于字符串中单词的结尾/中间时,我想避免。
任何建议都会有很大帮助。 干杯。
答案 0 :(得分:0)
正则表达式。
if( preg_match('(\b'.preg_quote($searchWord).'\w*)i',$currentString,$match)) {
echo $searchWord . " matched the word ".$match[0]."!";
}
请注意如何使用它来获取找到的整个单词? :)
答案 1 :(得分:-3)
if(substr($currentString,0,300) == $searchWord){
}