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 相关文章推荐
如何使用PHP中的字符串函数
Oct 09 PHP
我的论坛源代码(五)
Oct 09 PHP
PHP mail 通过Windows的SMTP发送邮件失败的解决方案
May 27 PHP
PHP逐行输出(ob_flush与flush的组合)
Feb 04 PHP
PHP json_encode中文乱码问题的解决办法
Sep 09 PHP
php实现分页工具类分享
Jan 09 PHP
php定时计划任务与fsockopen持续进程实例
May 23 PHP
浅析PHP文件下载原理
Dec 25 PHP
2款PHP无限级分类实例代码
Nov 11 PHP
详解PHP匿名函数与注意事项
Mar 29 PHP
php+layui数据表格实现数据分页渲染代码
Oct 26 PHP
设定php简写功能的方法
Nov 28 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
php+redis实现注册、删除、编辑、分页、登录、关注等功能示例
2017/02/15 PHP
PHP读取CSV大文件导入数据库的实例
2017/07/24 PHP
PHP类的自动加载机制实现方法分析
2019/01/10 PHP
jQuery动画animate方法使用介绍
2013/05/06 Javascript
JS在TextArea光标位置插入文字并实现移动光标到文字末尾
2013/06/21 Javascript
Jquery中的层次选择器与find()的区别示例介绍
2014/02/20 Javascript
jquery制作select列表双向选择示例代码
2014/09/02 Javascript
Javascript 实现图片无缝滚动
2014/12/19 Javascript
JavaScript获取DOM元素的11种方法总结
2015/04/25 Javascript
jQuery实现可关闭固定于底(顶)部的工具条菜单效果
2015/11/06 Javascript
javascript实现移动端上的触屏拖拽功能
2016/03/04 Javascript
深入浅析JSON.parse()、JSON.stringify()和eval()的作用详解
2016/04/03 Javascript
Bootstrap进度条学习使用
2017/02/09 Javascript
layui 表格的属性的显示转换方法
2018/08/14 Javascript
React 实现拖拽功能的示例代码
2019/01/06 Javascript
利用Vue实现一个markdown编辑器实例代码
2019/05/19 Javascript
关于element-ui表单中限制输入纯数字的解决方式
2020/09/08 Javascript
Python实现的几个常用排序算法实例
2014/06/16 Python
python脚本实现查找webshell的方法
2014/07/31 Python
深入理解python中的atexit模块
2017/03/07 Python
Python使用Tkinter实现机器人走迷宫
2018/01/22 Python
python进阶之多线程对同一个全局变量的处理方法
2018/11/09 Python
python GUI实现小球满屏乱跑效果
2019/05/09 Python
Ubuntu中配置TensorFlow使用环境的方法
2020/04/21 Python
pytorch Dataset,DataLoader产生自定义的训练数据案例
2021/03/03 Python
CSS3悬停效果案例应用
2012/11/21 HTML / CSS
解决img标签上下出现间隙的方法
2016/12/14 HTML / CSS
canvas实现图片马赛克的示例代码
2018/03/26 HTML / CSS
html5 canvas-1.canvas介绍(hello canvas)
2013/01/07 HTML / CSS
Vans英国官方网站:美国南加州的原创极限运动潮牌
2017/01/20 全球购物
腾讯公司的一个sql题
2013/01/22 面试题
中学生期中自我鉴定
2014/04/20 职场文书
面试自我评价范文
2014/09/17 职场文书
乡镇镇长个人整改措施
2014/10/01 职场文书
六年级学生期末评语
2014/12/26 职场文书
家长会后的感想
2015/08/11 职场文书