如果字符串位于单词的开头,则在字符串中查找字符串

时间:2015-01-12 21:04:41

标签: php

我想搜索字符串中是否有单词/短语(~max 300 char)并且我正在使用:

if (strpos($currentString,$searchWord) !== false) {
  .....
}

该代码适用于完全匹配以及部分匹配,例如:搜索贝叶斯语中的单词贝叶,这很好。但问题是它还在扩散中找到融合中的搜索词。我想找出搜索词是整个单词还是字符串中单词的开头。当搜索词位于字符串中单词的结尾/中间时,我想避免。

任何建议都会有很大帮助。 干杯。

2 个答案:

答案 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){

}