Php 检查字符串中是否存在单词列表
嗨,我正在检查字符串中是否存在单词列表(或其中任何一个)。我尝试了一些我在这里找到的例子,但是我仍然不能让它正常工作 知道我做错了什么吗Php 检查字符串中是否存在单词列表,php,Php,嗨,我正在检查字符串中是否存在单词列表(或其中任何一个)。我尝试了一些我在这里找到的例子,但是我仍然不能让它正常工作 知道我做错了什么吗 $ss3="How to make a book"; $words = array ("book","paper","page","sheet"); if (in_array($ss3, $words) ) { echo "found it"; } 您需要explode()您的$ss3字符串,然后将每个项目与$words循环进行比较
$ss3="How to make a book";
$words = array ("book","paper","page","sheet");
if (in_array($ss3, $words) )
{
echo "found it";
}
您需要explode()
您的$ss3
字符串,然后将每个项目与$words
循环进行比较
_阵列中的手册
explode()的手册
在数组上循环,检查字符串中是否存在每个元素
$ss3="How to make a book";
$words = array ("book","paper","page","sheet");
foreach($words as $w){
if (stristr($ss3,$w)!==false)
echo "found $w \n";
}
这是检查字符串中是否存在单词的方法。还请记住,必须先将字符串转换为小写,然后将其分解
$ss3="How to make a book";
$ss3 = strtolower($ss3);
$ss3 = explode(" ", $ss3);
$words = array ("book","paper","page","sheet");
if (in_array($ss3, $words) )
{
echo "found it";
}
干杯 您可以与like as一起使用
您可以使用正则表达式。它看起来像这样:
$ss3 = "How to make a book";
if (preg_match('/book/',$ss3))
echo 'found!!';
in_数组将只检查数组中的完整字符串值。
现在您可以尝试以下方法:
$string = 'How to make a book';
$words = array("book","paper","page","sheet");
foreach ($words as $val) {
if (strpos($string, $val) !== FALSE) {
echo "Match found";
return true;
}
}
echo "Not found!";
此代码将帮助您获得更好的答案
<?php
$str="Hello World Good";
$word=array("Hello","Good");
$strArray=explode(" ",$str);
foreach($strArray as $val){
if(in_array($val,$word)){
echo $val."<br>";
}
}
?>
in_数组将只检查数组中的完整字符串值。注意:此答案在输出方面无效。我们必须检查$words
的任何或所有元素是否在字符串中,而不是相反。例如,这个答案会说to
不是用文字写的,但OP不想检查。只需检查<代码>单词$< /代码>中的单词,请考虑相应的更新。
$string = 'How to make a book';
$words = array("book","paper","page","sheet");
foreach ($words as $val) {
if (strpos($string, $val) !== FALSE) {
echo "Match found";
return true;
}
}
echo "Not found!";
<?php
$str="Hello World Good";
$word=array("Hello","Good");
$strArray=explode(" ",$str);
foreach($strArray as $val){
if(in_array($val,$word)){
echo $val."<br>";
}
}
?>