174

检查字符串是否包含“。”的最有效方法是什么?或不?

我知道您可以通过许多不同的方式执行此操作,例如使用正则表达式或遍历字符串以查看它是否包含点(“.”)。

4

3 回答 3

493

PHP 8 或更新版本:

使用该str_contains功能。

if (str_contains($str, "."))
{
    echo 'Found it';
}

else
{
    echo 'Not found.';
}

PHP 7 或更早版本:

if (strpos($str, '.') !== FALSE)
{
    echo 'Found it';
}

else
{
    echo 'Not found.';
}

请注意,您需要使用!==运算符。如果您使用!=or<>并且'.'在位置找到0,则比较将评估为真,因为0它松散地等于false

于 2012-11-27T03:44:29.733 回答
66

您可以使用这些字符串函数,

strstr — 查找第一次出现的字符串

strstr - 不区分大小写的 strstr()

strrchr — 查找字符串中最后一次出现的字符

strpos — 查找字符串中子字符串第一次出现的位置

strpbrk — 在字符串中搜索任何一组字符

如果那没有帮助,那么您应该使用preg正则表达式

preg_match — 执行正则表达式匹配

于 2012-11-27T03:44:36.270 回答
7

您可以使用 stristr()strpos()。如果没有找到,两者都返回 false 。

于 2012-11-27T03:46:25.280 回答