PHP正则验证字符串是否为数字的两种方法并附常用正则


Posted in PHP onFebruary 27, 2019

php 正则验证字符串是否为数字

方法一:

php中利用正则表达式验证字符串是否为数字一件非常容易的事情,最主要的是如何写好正则表达式以及掌握正则表达式的写法,在此利用正则表达式的方式来列举一下判断数字的方法。

<?
if($str)
{
if(eregi("^[0-9]+$",$str))
{
$str=(int)$str;
}
else
{
echo "获取到的数据不是有效的数字类型,操作将停止!";
exit();
}
}
else
{
echo "需要验证的数据为空,操作停止!";
exit();
}
?>

方法二:

建议大家对关键的参数必须做过滤。如数字正则过滤

if(preg_match("/^\d*$/",$fgid))  echo('是数字');
else  echo('不是数字');

或者用函数

if(is_numeric($fgid)) echo('是数字');
else echo('不是数字');[/code]这两种方法的区别是 is_numeric小数也会认为是数字,而前面正则会把小数点当作字符。

附一些常用的正则运算:

  • 验证数字:^[0-9]*$
  • 验证n位的数字:^\d{n}$
  • 验证至少n位数字:^\d{n,}$
  • 验证m-n位的数字:^\d{m,n}$
  • 验证零和非零开头的数字:^(0|[1-9][0-9]*)$
  • 验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$
  • 验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$
  • 验证非零的正整数:^\+?[1-9][0-9]*$
  • 验证非零的负整数:^\-[1-9][0-9]*$
  • 验证非负整数(正整数 + 0)  ^\d+$
  • 验证非正整数(负整数 + 0)  ^((-\d+)|(0+))$
  • 验证长度为3的字符:^.{3}$
  • 验证由26个英文字母组成的字符串:^[A-Za-z]+$
  • 验证由26个大写英文字母组成的字符串:^[A-Z]+$
  • 验证由26个小写英文字母组成的字符串:^[a-z]+$
  • 验证由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$
  • 验证由数字、26个英文字母或者下划线组成的字符串:^\w+$
  • 验证用户密码:^[a-zA-Z]\w{5,17}$ 正确格式为:以字母开头,长度在6-18之间,只能包含字符、数字和下划线。
  • 验证是否含有 ^%&‘,;=?$\” 等字符:[^%&‘,;=?$\x22]+
  • 验证汉字:^[\u4e00-\u9fa5],{0,}$
  • 验证Email地址:^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
  • 验证InternetURL:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ ;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$
  • 验证电话号码:^(\d3,4\d3,4|\d{3,4}-)?\d{7,8}$:?正确格式为:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX。
  • 验证身份证号(15位或18位数字):^\d{15}|\d{}18$
  • 验证一年的12个月:^(0?[1-9]|1[0-2])$ 正确格式为:“01”-“09”和“1”“12”
  • 验证一个月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$    正确格式为:01、09和1、31。
  • 整数:^-?\d+$
  • 非负浮点数(正浮点数 + 0):^\d+(\.\d+)?$
  • 正浮点数   ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$
  • 非正浮点数(负浮点数 + 0) ^((-\d+(\.\d+)?)|(0+(\.0+)?))$
  • 负浮点数  ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$
  • 浮点数  ^(-?\d+)(\.\d+)?

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

PHP 相关文章推荐
SMARTY学习手记
Jan 04 PHP
PHP统计目录下的文件总数及代码行数(去除注释及空行)
Jan 17 PHP
php提示Call-time pass-by-reference has been deprecated in的解决方法[已测]
May 06 PHP
基于php导出到Excel或CSV的详解(附utf8、gbk 编码转换)
Jun 25 PHP
php 类自动载入的方法
Jun 03 PHP
WIFI万能钥匙密码查询接口实例
Sep 28 PHP
讲解WordPress开发中一些常用的debug技巧
Dec 18 PHP
thinkPHP导出csv文件及用表格输出excel的方法
Dec 30 PHP
PHP执行shell脚本运行程序不产生core文件的方法
Dec 28 PHP
详细解读php的命名空间(二)
Feb 21 PHP
php常用日期时间函数实例小结
Jul 04 PHP
php实现通过stomp协议连接ActiveMQ操作示例
Feb 23 PHP
PHP判断是否是微信打开还是浏览器打开的方法
Feb 27 #PHP
asp函数split()对应php函数explode()
Feb 27 #PHP
PHP中引用类型和值类型功能与用法示例
Feb 26 #PHP
PHP5.6读写excel表格文件操作示例
Feb 26 #PHP
PHP中抽象类,接口功能、定义方法示例
Feb 26 #PHP
PHP htmlentities()函数用法讲解
Feb 25 #PHP
PHP html_entity_decode()函数讲解
Feb 25 #PHP
You might like
Codeigniter校验ip地址的方法
2015/03/21 PHP
php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比
2015/04/14 PHP
Zend Framework生成验证码并实现验证码验证功能(附demo源码下载)
2016/03/22 PHP
php实现图片上传、剪切功能
2016/05/07 PHP
Thinkphp5 微信公众号token验证不成功的原因及解决方法
2017/11/12 PHP
php文件操作之文件写入字符串、数组的方法分析
2019/04/15 PHP
Laravel 默认邮箱登录改成用户名登录的实现方法
2019/08/12 PHP
jquery imgareaselect 使用利用js与程序结合实现图片剪切
2009/07/30 Javascript
基于JQuery实现鼠标点击文本框显示隐藏提示文本
2012/02/23 Javascript
jQuery ReferenceError: $ is not defined 错误的处理办法
2013/05/10 Javascript
javascript验证上传文件的类型限制必须为某些格式
2013/11/14 Javascript
Bootstrap实现水平排列的表单
2016/07/04 Javascript
VueJs与ReactJS和AngularJS的异同点
2016/12/12 Javascript
javascript读取文本节点方法小结
2016/12/15 Javascript
JS简单获取日期相差天数的方法
2017/04/24 Javascript
vue项目中v-model父子组件通信的实现详解
2017/12/10 Javascript
浅谈js闭包理解
2019/04/01 Javascript
[40:05]DOTA2上海特级锦标赛A组小组赛#1 EHOME VS MVP.Phx第一局
2016/02/25 DOTA
简单的连接MySQL与Python的Bottle框架的方法
2015/04/30 Python
Python基础教程之浅拷贝和深拷贝实例详解
2017/07/15 Python
python爬虫_自动获取seebug的poc实例
2017/08/05 Python
Python实现的径向基(RBF)神经网络示例
2018/02/06 Python
Python解决走迷宫问题算法示例
2018/07/27 Python
详解Python sys.argv使用方法
2019/05/10 Python
使用PyQt4 设置TextEdit背景的方法
2019/06/14 Python
python 接口实现 供第三方调用的例子
2019/08/13 Python
vscode+PyQt5安装详解步骤
2020/08/12 Python
如何在Anaconda中打开python自带idle
2020/09/21 Python
CSS3实现跳动的动画效果
2016/09/12 HTML / CSS
亚洲最大旅游体验平台:KKday
2017/10/21 全球购物
SEPHORA丝芙兰捷克官网:购买香水、化妆品和护肤品
2018/11/26 全球购物
德国咖啡批发商:Coffeefair
2019/08/26 全球购物
函授大专自我鉴定
2013/11/01 职场文书
大学生志愿者感言
2014/01/15 职场文书
单位提档介绍信
2015/10/22 职场文书
嵌入式Redis服务器在Spring Boot测试中的使用教程
2021/07/21 Redis