OnlyFans会员服务、TS-ywzzz339v21G数字商品
“一分耕耘...
2024-10-08
在一些场景中,比如说注册登录的时候,我们会对用户名做一些限制,比如只能是数字和字母的组合。一般情况下,我们会使用正则表达式来完成这样的功能,不过,PHP其实已经帮我们准备发了几个函数来处理这样的情况。
//数字和字母,不包含浮点数,[A-Za-z0-9]if(ctype_alnum($input)){echo$input,'是英文数字的组合字符!',PHP_EOL;}//英文字母,[A-Za-z]if(ctype_alpha($input)){echo$input,'是英文字母!',PHP_EOL;}//数字字符,不包含浮点数、负数(无符号正整数)if(ctype_digit($input)){echo$input,'是数字字符!',PHP_EOL;}上面三个函数分别分就的就是数字+字母、纯字母、纯数字的三种字符类型的判断。没错,关于这种判断我们使用的正是 ctype_ 开头的这些函数。在这其中,唯一需要注意的是 ctype_digit() 进行数字判断时,返回 true 的情况只能是无符号、无小数点的正整数,也就是说负数和小数也是无法通过这个函数的判断的。我们在文章的最后还会看一下 ctype_digit() 和 is_numeric() 有什么区别。
当然,ctype_ 相关的函数不止这三个,还有很多,我们再来看一组。
//小写字母if(ctype_lower($input)){echo$input,'是小写字母字符!',PHP_EOL;}//大写字母if(ctype_upper($input)){echo$input,'是大写字母字符!',PHP_EOL;}//所有可打印字符if(ctype_print($input)){echo$input,'是可打印字符!',PHP_EOL;}//所有字符都是可见的,除了空格或者格式控制这些不可见的if(ctype_graph($input)){echo$input,'是可打印字符,除空白字符!',PHP_EOL;}//不包含空白、字母、数字的可打印字符英文标点符号类if(ctype_punct($input)){echo$input,'是不包含空白、字母、数字的可打印字符!',PHP_EOL;}ctype_lower() 和 ctype_upper() 是判断字符串中的内容是否全都为小写或大写。记住,满足条件的情况是字符串中所有的内容都必须为大写或小写,有一个字母不是的话那就无法返回 true 。当然,这两个判断里面也都必须是英文字母,不能有数字、空格之类的内容。
ctype_print() 是判断是否是可打印内容。什么是可打印内容呢?就是 echo 、 print 之类的能够输出并且你能在屏幕上看到的内容。
ctype_graph() 是除了空白字符之外的可打印字符。什么叫空白字符呢?\n、\t这一类的制表符号,还有我们正常的空格都是空白字符。
ctype_punct() 可以简单的理解为就是标点符号,整个字符串都是标点符号组成的,并且不包含空白内容。
//\n\t\r之类if(ctype_cntrl($input)){echo$input,'是格式控制字符!',PHP_EOL;}//空格if(ctype_space($input)){echo$input,'是空格字符!',PHP_EOL;}//16进制AB10BC99if(ctype_xdigit($input)){echo$input,'是十六进制字符!',PHP_EOL;}貌似制表符不是很受欢迎呀,不用怕,ctype_cntrl() 就是专门判断整个字符是不是由这些制表符组成的。
ctype_space() 从名字就可以看出,是不是由空格组成的字符串。
ctype_xdigit() 是我们最后一个 ctype_ 函数,从名字其实也能够看出来,它是判断是否是16进制字符串的。
这两个函数都是判断参数是否为数字的,但是它们有一个很大的区别就是 ctype_digit() 仅针对字符串。也就是说它是用来判断字符串中的内容是否是数字的,如果直接给它一个普通的数字类型,那么它还是会返回 false 的,它会认为这个数字类型的内容不是一个“字符串”类型的数字。
//ctype_digit与is_numeric的区别$numeric_string='42';$integer=42;echoctype_digit($numeric_string),PHP_EOL;//trueechoctype_digit($integer),PHP_EOL;//false(ASCII42isthe*character)echois_numeric($numeric_string),PHP_EOL;//trueechois_numeric($integer),PHP_EOL;//true是不是一组很方便的函数。不过其实现在使用正则也很方便,而且正则的组合形式更加多样,我们的可控制范围更大,所以正则还是在这种情况下的首选。当然,越灵活也越有可能出错,正则中如果漏写一点内容又没有详尽的测试的话,也有可能造成严重的后果。因此,在日常工作中,具体的取舍还是要看我们自身,这里也只是为大家作个科普介绍,使用何种方式的决定权还是掌握在我们自己手上。
另外需要说明的是,这一组 ctype_ 函数,是不支持中文的,它们仅支持英文、数字、英文符号这一类的判断。
以上内容就是为大家推荐的正则数字匹配(正则表达式匹配数字)最佳回答,如果还想搜索其他问题,请收藏本网站或点击搜索更多问题
内容来源于网络仅供参考版权声明:所有来源标注为小樱知识网www.xiaoyin02.com的内容版权均为本站所有,若您需要引用、转载,只需要注明来源及原文链接即可。
本文标题:正则数字匹配(正则表达式匹配数字)
本文地址:https://www.xiaoyin02.com/shcs/117670.html
相关文章
怎么给手机解锁数字的,行程码怎么显示完整手机号? 在微信里搜索小程序健康码,打开健康码往下滑一下,找到行程码点击进入,会出来一个页面, 上...
2023-04-20
手机怎么蓝牙音箱,001怎么匹配手机? 1,打开蓝牙音箱,再按一下蓝牙的开关,将蓝牙功能开启 2,然后回到我们的手机 3,在设置里找到蓝牙选项,将最...
2023-04-19
苹果手机怎么按,苹果手机按数字难按怎么办? 1. 苹果手机屏幕锁,就是打开的时候要输密码,可数字按不动,一般是卡屏或者死机现象。 2. 解决办法: 同时按...
2023-04-19
苹果手机的打字怎么,苹果13怎么打出小数字? 具体操作如下: 1、打开手机输入法,输入需要的数字; 2、点击输入法【符】; 3、选择【角标】,找到【...
2023-04-18
热点文章
2021年独生子女补贴新政策是真的吗(独生子女证有有效期吗)
2021年国庆节阅兵仪式几点开始几点结束(2021年国庆节还有阅兵吗)
鼠目寸光一点红是什么生肖动物(鼠目寸光一点红)指什么生肖,紧密
k0到k9的玩法大全(强制gc的玩法和注意事项)
入土为安是什么生肖《入土为安》打一个生肖动物,词语解释
浙江12月底全面停工是真的吗(浙江什么时候放假停工)
如何做t(t怎么把p做哭)
北京口碑最差的三甲医院(北京301医院最擅长什么)