gpt4 book ai didi

php - 正则表达式只验证自然数?

转载 作者:可可西里 更新时间:2023-11-01 13:02:40 30 4
gpt4 key购买 nike

我最近发现我一直用来验证用户输入的方法接受了一些我不是特别满意的值。我需要它只接受没有非数字字符的自然数(123 等)。

我的方法是这样的:

function is_natural($str)
{
return preg_match('/[^0-9]+$/', $str) ? false : $str;
}

因此,如果它发现除自然数以外的任何其他内容,它应该返回 false。问题是,它接受像 "2.3" 甚至 "2.3,2.2"

这样的字符串

最佳答案

也许你能弄清楚“数字”和“数字”之间的区别??

无论如何,你可以使用

if (preg_match('/^[0-9]+$/', $str)) {
// contains only 0-9
} else {
// contains other stuff
}

或者你可以使用

$str = (string) $str;
ctype_digit($str);

关于php - 正则表达式只验证自然数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4878194/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com