PHP正则表达式常用例子

PHP正则表达式常用例子

"^[0-9]*[1-9][0-9]*$"   //正整数
"^((-\d+)|(0+))$"   //非正整数(负整数 + 0)
"^-[0-9]*[1-9][0-9]*$"   //负整数
"^-?\d+$"     //整数
"^\d+(\.\d+)?$"   //非负浮点数(正浮点数 + 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+)?)|(0+(\.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+)?$"   //浮点数
"^[A-Za-z]+$"   //由26个英文字母组成的字符串
"^[A-Z]+$"   //由26个英文字母的大写组成的字符串
"^[a-z]+$"   //由26个英文字母的小写组成的字符串
"^[A-Za-z0-9]+$"   //由数字和26个英文字母组成的字符串
"^\w+$"   //由数字、26个英文字母或者下划线组成的字符串
"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$"    //email地址
"^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$"//url
/^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/ // 年-月-日
/^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/ // 月/日/年
"^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$" //Emil
/^((\+?[0-9]{2,4}\-[0-9]{3,4}\-)|([0-9]{3,4}\-))?([0-9]{7,8})(\-[0-9]+)?$/ //电话号码

"^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])$" //IP地址

匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
匹配空行的正则表达式:\n[\s| ]*\r
匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/
匹配首尾空格的正则表达式:(^\s*)|(\s*$)
匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配网址URL的正则表达式:^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$
匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
匹配国内电话号码:(\d{3}-|\d{4}-)?(\d{8}|\d{7})?
匹配腾讯QQ号:^[1-9]*[1-9][0-9]*$

利用正则表达式限制网页表单里的文本框输入内容:
用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^u4E00-u9FA5]/g,''))"
用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^uFF00-uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^uFF00-uFFFF]/g,''))"

用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))"

用正则表达式限制只能输入数字和英文:onkeyup="value=value.replace(/[W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))"

常用正则式

匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
匹配空行的正则表达式:\n[\s| ]*\r
匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/
匹配首尾空格的正则表达式:(^\s*)|(\s*$)
匹配IP地址的正则表达式:/(\d+)\.(\d+)\.(\d+)\.(\d+)/g //
匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配网址URL的正则表达式:http://(/[\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?
sql语句:^(select|drop|delete|create|update|insert).*$

非负整数:^\d+$
正整数:^[0-9]*[1-9][0-9]*$
非正整数:^((-\d+)|(0+))$
负整数:^-[0-9]*[1-9][0-9]*$
整数:^-?\d+$
非负浮点数:^\d+(\.\d+)?$
正浮点数:^((0-9)+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$
非正浮点数:^((-\d+\.\d+)?)|(0+(\.0+)?))$
负浮点数:^(-((正浮点数正则式)))$
英文字符串:^[A-Za-z]+$
英文大写串:^[A-Z]+$
英文小写串:^[a-z]+$
英文字符数字串:^[A-Za-z0-9]+$
英数字加下划线串:^\w+$
E-mail地址:^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$
URL:^[a-zA-Z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\s*)?$ 或:^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$
邮政编码:^[1-9]\d{5}$ 中文:^[\u0391-\uFFE5]+$
电话号码:^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$
手机号码:^((\(\d{2,3}\))|(\d{3}\-))?13\d{9}$
双字节字符(包括汉字在内):^\x00-\xff
匹配首尾空格:(^\s*)|(\s*$)(像vbscript那样的trim函数)
匹配HTML标记:<(.*)>.*<\/\1>|<(.*) \/>
匹配空行:\n[\s| ]*\r
提取信息中的网络链接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
提取信息中的邮件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
提取信息中的图片链接:(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
提取信息中的IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+)
提取信息中的中国手机号码:(86)*0*13\d{9}
提取信息中的中国固定电话号码:(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}
提取信息中的中国电话号码(包括移动和固定电话):(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}
提取信息中的中国邮政编码:[1-9]{1}(\d+){5}
提取信息中的浮点数(即小数):(-?\d*)\.?\d+
提取信息中的任何数字:(-?\d*)(\.\d+)? IP:(\d+)\.(\d+)\.(\d+)\.(\d+)
电话区号:/^0\d{2,3}$/
腾讯QQ号:^[1-9]*[1-9][0-9]*$
帐号(字母开头,允许5-16字节,允许字母数字下划线):
^[a-zA-Z][a-zA-Z0-9_]{4,15}$
中文、英文、数字及下划线:^[\u4e00-\u9fa5_a-zA-Z0-9]+$

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/4508.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
重蔚重蔚管理团队
上一篇 2018年3月3日 23:59
下一篇 2018年3月5日 12:05

相关推荐

  • php如何安装bcmath扩展脚本?(附代码)

    php如何安装bcmath扩展脚本?下面本篇文章给大家介绍一下php安装bcmath扩展脚本的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。#!/bin/bash bcmath_ini=/etc/php.d/40-bcmath.ini ## 安…

    2022年6月20日
    0176
  • PHP入门指南:PHP和PowerShell。

    作为一种流行的服务器端编程语言,PHP 可以帮助开发人员快速构建动态 Web 页和 Web 应用。然而,要在 Windows 平台上运行 PHP 脚本,并利用 PowerShell 和相关的脚本命令自动化任务,则需要了解一些基础知识和技巧…

    2023年5月22日
    01
  • 直击php中static,const与define的使用区别

    define部分:宏不仅可以用来代替常数值,还可以用来代替表达式,甚至是代码段。(宏的功能很强大,但也容易出错,所以其利弊大小颇有争议。)宏的语法为:#define 宏名称 宏值作为一种建议和一种广大程序员共同的习…

    2022年6月17日
    0134
  • 今日分享在linux下如何安装php5.2「linux怎么安装php」。

    在Linux下安装PHP 5.2,可以按照以下步骤进行: 1. 需要更新系统的软件包列表,在终端中输入以下命令: sudo apt-get update 2. 然后,安装EPEL源,EPEL(Extra Packages for Enterprise Linux)是一个由Fedora项目…

    2024年6月14日
    01
  • 我来教你美国php虚拟主机购买怎么用。

    在互联网时代,网站已经成为企业和个人展示形象、传播信息的重要途径。为了更好地搭建和维护网站,越来越多的人选择购买海外php云虚拟主机。以下是购买和使用美国PHP虚拟主机的一些建议:,,1. **选择合适的虚拟主…

    2024年7月8日
    03
  • PHP中的数据抓取和爬虫技术。

    随着移动互联网和Web2.0时代的发展,人们越来越需要获取和分析互联网上的数据。而在这个过程中,数据抓取和爬虫技术成为了必不可少的工具。在众多语言中,PHP作为一种脚本语言,也能够实现较为简单和高效的数据抓取…

    2023年5月28日
    08
  • 如何让tomcat支持PHP运行

    java开发者都知道,tomcat是用来部署java web项目的。要求与PHP项目使用相同域名、相同端口,在不使用nginx的情况下如何实现? 得知通过Java Bridge 可以实现tomcat支持运行php运行。 下面是详细步骤。1.环境准备安…

    2023年3月29日
    00
  • 关于PHP CURL上传二进制流图片

    前言项目中模块数据由PHP爬虫进行更新,当检测到有新图片时需要上传到跨地区的CDN回源服务器(静态资源服务器),服务器负责人只提供一个上传API解决方法1.将图片保存到本地再使用PHP CURL + new \\CURLFile($path)上…

    2022年6月27日
    0348

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息