Php 从句子中提取单词

Php 从句子中提取单词,php,Php,有没有一种方法可以使用PHP在句子中查找单词?我们有一个表单,在主题行中,如果某人使用了delivery、deliver或delived这几个词,我们希望重定向他们。这能做到吗?怎么做?感谢您对本主题的帮助。多种方法中的一种: if (preg_match('/deliver(y|ed)?/', $string)) { // yes, $string contained 'deliver', 'delivery' or 'delivered' } 多种方法中的一种: if (preg_

有没有一种方法可以使用PHP在句子中查找单词?我们有一个表单,在主题行中,如果某人使用了delivery、deliver或delived这几个词,我们希望重定向他们。这能做到吗?怎么做?感谢您对本主题的帮助。

多种方法中的一种:

if (preg_match('/deliver(y|ed)?/', $string)) {
    // yes, $string contained 'deliver', 'delivery' or 'delivered'
}
多种方法中的一种:

if (preg_match('/deliver(y|ed)?/', $string)) {
    // yes, $string contained 'deliver', 'delivery' or 'delivered'
}
这应该做到:

if ( preg_match('/deliver(?:y|ed)?/i', $subject) )
{
  // Redirect
}
这应该做到:

if ( preg_match('/deliver(?:y|ed)?/i', $subject) )
{
  // Redirect
}

您可以使用
strpos
函数在另一个字符串中搜索字符串。如果未找到字符串,将返回
false
,并且您知道未找到您的字符串。

您可以使用
strpos
函数在另一个字符串中搜索字符串。如果未找到字符串,将返回
false
,并且您知道未找到字符串。

此处:

<?php
if (strpos($string, "deliver")) {
   header("Location: somepage.php");

}
?>

此处:


另一种方法:

if (stristr($sentence,"deliver")) {
header('location: somepage.php');
}
但我会使用前面表达的preg_match。

另一种方法:

if (stristr($sentence,"deliver")) {
header('location: somepage.php');
}
但我会使用preg_match,如前所述

  • 要提取所有单词,只需使用空格字符分解字符串
  • 要检查特定单词,请使用简单的strps()函数或正则表达式模式匹配

    preg_match(“/(?:^\s+)交付(y|ed)?(?:$\s+)/i”)

    上面的表达式检查空格字符或字符串的开头,类似的空格字符或字符串的结尾

  • 要提取所有单词,只需使用空格字符分解字符串
  • 要检查特定单词,请使用简单的strps()函数或正则表达式模式匹配

    preg_match(“/(?:^\s+)交付(y|ed)?(?:$\s+)/i”)

    上面的表达式检查空格字符或字符串的开头,类似的空格字符或字符串的结尾


  • 这不适用于“交付”。您需要在(y | ed)之后添加问号(?)。我还会添加“I”修饰符,以防主题不全是小写。这对“deliver”不起作用。您需要在(y | ed)之后添加问号(?)。我还想添加“I”修饰符,以防主题不是全部小写。请注意,在使用
    strpos
    时,应该使用类似
    if(strpos(…)!==false)
    的条件,否则语句将始终返回true。(如果句子以单词开头,位置为0,计算结果为false)请注意,在使用
    strpos
    时,应使用类似
    if(strpos(…)!==false)
    的条件,否则语句将始终返回true。(如果句子以单词开头,则位置为0,计算结果为false)