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 cookies中删除的一般赋值方法
May 07 PHP
PHP 日,周,月点击排行统计
Jan 11 PHP
php代码收集表单内容并写入文件的代码
Jan 29 PHP
coreseek 搜索英文的问题详解
Jun 08 PHP
php 地区分类排序算法
Jul 01 PHP
ThinkPHP3.1新特性之Action参数绑定
Jun 19 PHP
Symfony2 session用法实例分析
Feb 04 PHP
基于Swoole实现PHP与websocket聊天室
Aug 03 PHP
Thinkphp3.2实用篇之计算型验证码示例
Feb 09 PHP
PHP微信PC二维码登陆的实现思路
Jul 13 PHP
PHP 应用容器化以及部署方法
Feb 12 PHP
Laravel 自带的Auth验证登录方法
Sep 30 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类(查找/修改)xml文档
2013/03/26 PHP
yii2.0数据库迁移教程【多个数据库同时同步数据】
2016/10/08 PHP
PHP微信支付结果通知与回调策略分析
2019/01/10 PHP
强制设为首页代码
2006/06/19 Javascript
自动设置iframe大小的jQuery代码
2013/09/11 Javascript
详解js的六大数据类型
2016/12/27 Javascript
Bootstrap 3 进度条的实现
2017/02/22 Javascript
详解webpack进阶之loader篇
2017/08/23 Javascript
jQuery中ajax获取数据赋值给页面的实例
2017/12/31 jQuery
Vue2.5 结合 Element UI 之 Table 和 Pagination 组件实现分页功能
2018/01/26 Javascript
vuex实现的简单购物车功能示例
2019/02/13 Javascript
Vue父子传递实例讲解
2020/02/14 Javascript
Python 中开发pattern的string模板(template) 实例详解
2017/04/01 Python
python3中函数参数的四种简单用法
2018/07/09 Python
使用python判断你是青少年还是老年人
2018/11/29 Python
详解python 3.6 安装json 模块(simplejson)
2019/04/02 Python
Python 导入文件过程图解
2019/10/15 Python
Pytorch之Variable的用法
2019/12/31 Python
Tensorflow累加的实现案例
2020/02/05 Python
Python 使用生成器代替线程的方法
2020/08/04 Python
Python tkinter界面实现历史天气查询的示例代码
2020/08/23 Python
Expedia加拿大官方网站:加拿大最大的在线旅游提供商
2017/12/31 全球购物
德国在线订购鲜花:Fleurop
2018/08/25 全球购物
介绍一下EJB的体系结构
2012/08/01 面试题
大学新生军训感言
2014/02/25 职场文书
保密承诺书
2014/03/27 职场文书
美丽家庭事迹材料
2014/05/03 职场文书
事业单位鉴定材料
2014/05/25 职场文书
2015大学生实训报告
2014/11/05 职场文书
2016国庆节67周年寄语
2015/12/07 职场文书
终止合同协议书范本
2016/03/22 职场文书
学生会自荐信
2019/05/16 职场文书
python基于tkinter制作m3u8视频下载工具
2021/04/24 Python
SQL模糊查询报:ORA-00909:参数个数无效问题的解决
2021/06/21 Oracle
pandas中对文本类型数据的处理小结
2021/11/01 Python
Redis基本数据类型String常用操作命令
2022/06/01 Redis