【问题标题】:find the specific word in string using PHP使用 PHP 查找字符串中的特定单词
【发布时间】:2017-03-11 04:45:26
【问题描述】:

就像我有字符串“我想用 1000 美元买一个蛋糕”

所以如果我按“1000”搜索应该返回 true,但如果我搜索“100”或“10000”应该返回 false

另一个例子:

“我在享受音乐”如果我搜索“enjoy”应该返回 false,但如果我搜索“enjoying”应该返回 true

我尝试使用if(strpos($string, $text ) !== false),但它不起作用,但是如果特定单词的后面或前面有额外的字母,它总是返回 true。

【问题讨论】:

标签: php string


【解决方案1】:

我会看正则表达式。这是一个类似问题的链接Regular expression to match a whole word 有一个部分讨论了单词边界,您需要检查一下。

【讨论】:

    【解决方案2】:

    试试这个:

    $haystack = "I want to buy a cake with $1000";
    if (preg_match('/\$1000$/', $haystack, $match) === 1) {
      echo "Found it: ". $match[0];
    }
    

    还建议您避开美元符号,或将字符串放在单引号内作为安全措施。如果 '$' 符号后面有一个单词字符,解析器将尝试将其扩展为变量(通过将其转换为字符串)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-31
      • 2013-08-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多