为了账号安全,请及时绑定邮箱和手机立即绑定

检查字符串中的多个单词,并显示找到/未找到的单词

检查字符串中的多个单词,并显示找到/未找到的单词

PHP
潇潇雨雨 2022-09-12 13:08:37
我正在使用此处的示例检查字符串中的多个单词。但是,我不确定如何显示字符串中找到的单词和未找到的单词。任何想法如何实现这一目标。我正在使用的代码如下所示。anubhava$bad_words = array("yo","hi");$sentence = "yo you your";preg_match_all('/\w+/', $sentence, $m);echo ( array_diff ( $m[0], $bad_words ) === $m[0] ) ? "no bad words found\n" :                                                      "bad words found\n";
查看完整描述

1 回答

?
jeck猫

TA贡献1909条经验 获得超7个赞

首先,您需要定义此上下文中的单词是什么。例如,“煎饼”是一个词还是两个词?如果你搜索“平底锅”,如果找到“煎饼”,它应该返回真吗?另外,“人工智能”是一个词吗?“2020”是一个词吗?“快速通道”呢?搜索是否应区分大小写?它是否应该包括部分发现?如果你只是想要一个简单的,针/大海捞针搜索,那么解决方案是微不足道的。strpos


$searchWords = ["yo","hi"];

$sentence    = "yo you your";

$wordsFound  = [];


foreach ($searchWords as $word) {

    if (stripos($sentence, $word) !== false) {

        $wordsFound[$word] = true;

    }

}


echo "Words found: ", implode(",", array_keys($wordsFound)); // Words found: yo

要找到在 中找不到的单词,只需执行 .$searchWords$wordsNotFound = array_diff($searchWords, array_keys($wordsFound))


查看完整回答
反对 回复 2022-09-12
  • 1 回答
  • 0 关注
  • 154 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号