使用strpos()查找整个单词

Sim*_*sen 2 php strpos

大家好:)我正在尝试使用strpos()在一个句子中查找整个单词.但此刻,如果它只是另一个词的一部分,它也会找到这个词.例如:

$mystring = "It's a beautiful morning today!";
$findme   = "a";

$pos = strpos($mystring, $findme);
Run Code Online (Sandbox Code Playgroud)

在这个例子中,它会在单词"a"(它应该这样做)中找到"a",但也会在"beautiful"中找到,因为其中有一个a.

我怎样才能找到整个单词而不是它是否是其他单词的一部分?

irc*_*ell 9

这是正则表达式的工作:

$regex = '/\b'.$word.'\b/';
Run Code Online (Sandbox Code Playgroud)

基本上,它找到由字边界(\b位)包围的字母.所以,找到位置:

preg_match($regex, $string, $match, PREG_OFFSET_CAPTURE);
$pos = $match[0][1];
Run Code Online (Sandbox Code Playgroud)