在字符串中搜索字符串(但忽略大写字母)

时间:2015-09-08 19:29:40

标签: php

我想在字符串中搜索特殊字符串,但脚本应该忽略大写字母。

示例代码:

if (in_string($string, "stringINaSTRING")) {
    echo "The String is in the string!";
}

如果$string包含STRINGINASCTRING,则应该回显The String is in the string

我怎样才能完成这项工作?

3 个答案:

答案 0 :(得分:2)

使用不区分大小写的搜索,例如stripos()

if (stripos($string, "STRINGINASTRING"))
{
    echo "The String is in the string!";
}

答案 1 :(得分:1)

在过去,我通过将您的字符串变量转换为大写或小写并与大写或小写字符串文字进行比较来完成此操作(以各种不同的语言)。也就是说:

if (strpos(strtoupper($string), "STRINGINASTRING") !== false) {
    echo "The String is in the string!";
}  

另请注意,使用strpos函数代替in_string声明。

这种方法只调用字符串转换函数一次,因为你已经知道你应该将变量与你的变量进行比较的文字字符串,你可以简单地将它自己定义为全部大写或全部小写(与strtolower一起使用);接受你的选择。

这个概念背后的一个细节是它适用于没有不区分大小写功能的语言。对我来说似乎更普遍;但另一方面,拥有完成相同工作的功能是安静的方便......

答案 2 :(得分:0)

将所有内容转换为较低的

if (in_string(strtolower($string), strtolower("stringINaSTRING"))) {
  echo "The String is in the string!";
}