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 相关文章推荐
PHP4.04简明安装
Oct 09 PHP
php下通过curl抓取yahoo boss 搜索结果的实现代码
Jun 10 PHP
PHP 实现explort() 功能的详解
Jun 20 PHP
PHP Switch 语句之学习笔记
Sep 21 PHP
php 判断字符串中是否包含html标签
Feb 17 PHP
一个php生成16位随机数的代码(两种方法)
Sep 16 PHP
PHP中shuffle数组值随便排序函数用法
Nov 21 PHP
php中mysql操作buffer用法详解
Mar 19 PHP
PHP扩展开发教程(总结)
Nov 04 PHP
CI框架集成Smarty的方法分析
May 17 PHP
解决laravel5中auth用户登录其他页面获取不到登录信息的问题
Oct 08 PHP
php封装的page分页类完整实例代码
Feb 01 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
实用函数7
2007/11/08 PHP
教你如何使用php session
2013/10/28 PHP
THINKPHP2.0到3.0有哪些改进之处
2015/01/04 PHP
PHP MPDF中文乱码的解决方式
2015/12/08 PHP
Laravel中批量赋值Mass-Assignment的真正含义详解
2017/09/29 PHP
IE浏览器兼容Firefox的JS脚本的代码
2008/10/23 Javascript
ie focus bug 解决方法
2009/09/03 Javascript
script标签的 charset 属性使用说明
2010/12/04 Javascript
通过Jquery遍历Json的两种数据结构的实现代码
2011/01/19 Javascript
JQuery.ajax传递中文参数的解决方法 推荐
2011/03/28 Javascript
jQuery实现感应鼠标动画效果自动伸长的输入框实例
2015/02/24 Javascript
js兼容火狐获取图片宽和高的方法
2015/05/21 Javascript
JavaScript仿静态分页实现方法
2015/08/04 Javascript
JS瀑布流实现方法实例分析
2016/12/19 Javascript
用file标签实现多图文件上传预览
2017/02/14 Javascript
jQuery设计思想
2017/03/07 Javascript
一次微信小程序内地图的使用实战记录
2019/09/09 Javascript
解决LayUI数据表格复选框不居中显示的问题
2019/09/25 Javascript
简单的Python抓taobao图片爬虫
2014/10/26 Python
Python IDLE 错误:IDLE''s subprocess didn''t make connection 的解决方案
2017/02/13 Python
python得到qq句柄,并显示在前台的方法
2018/10/14 Python
Python面向对象基础入门之设置对象属性
2018/12/11 Python
python3实现的zip格式压缩文件夹操作示例
2019/08/17 Python
python爬虫爬取笔趣网小说网站过程图解
2019/11/18 Python
pytorch中图像的数据格式实例
2020/02/11 Python
Marmot土拨鼠官网:美国专业户外运动品牌
2018/01/11 全球购物
Molton Brown美国官网:奢华美容、香水、沐浴和身体护理
2020/09/02 全球购物
实习生自荐信范文
2013/11/13 职场文书
个人教师自我评价范文
2013/12/02 职场文书
教师个人考察材料
2014/12/16 职场文书
年度考核表个人总结
2015/03/06 职场文书
2015年数学教师工作总结
2015/05/20 职场文书
签约仪式致辞
2015/07/30 职场文书
新手入门Mysql--sql执行过程
2021/06/20 MySQL
Mysql案例刨析事务隔离级别
2021/09/25 MySQL
Mysql中mvcc各场景理解应用
2022/08/05 MySQL