php 常见的正则匹配表达式学习笔记
在php中常用的正则表达式包括了如电话号,邮箱,用户名,手机号,邮箱,密码,QQ号,身份证号码,空格,字母,数字等等这些正则表达试代码,下面我来整理一下。
参考N+1个正则总结:
常见的正则匹配:
代码如下 | 复制代码 |
((11|12|13|14|15|21|22|23|31|32|33|34|35|36|37|41|42|43|44|45|46|50|51|52|53|54|61|62|63|64|65)[0-9]{4})(([1|2][0-9]{3}[0|1][0-9][0-3][0-9][0-9]{3}[X0-9])|([0-9]{2}[0|1][0-9][0-3][0-9][0-9]{3})) |
匹配腾讯QQ号:[1-9][0-9]{4,}注:腾讯QQ号从10000开始
价格:/(^[-+]?[1-9]d*(.d{1,2})?$)|(^[-+]?[0]{1}(.d{1,2})?$)/
验证用户密码:"^[a-zA-Z]w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。
中国邮政编码:[1-9]{1}(d+){5}
中国手机号码:(86)*0*13d{9}
掩码:
代码如下 | 复制代码 |
/^(254|252|248|240|224|192|128|0).0.0.0$|^(255.(254|252|248|240|224|192|128|0).0.0)$|^(255.255.(254|252|248|240|224|192|128|0).0)$|^(255.255.255.(254|252|248|240|224|192|128|0|255))$/ |
中国电话号码(包括移动和固定电话):((d{3,4})|d{3,4}-|s)?d{7,14}
正则表达式 "((d{3,4})|d{3,4}-)?d{7,8}(-d{3})*"(匹配形式如:0511-4405222 或者021-87888822 或者 021-44055520-555 或者 (0511)4405222)
中国身份证号码:
代码如下 | 复制代码 |
((11|12|13|14|15|21|22|23|31|32|33|34|35|36|37|41|42|43|44|45|46|50|51|52|53|54|61|62|63|64|65)[0-9]{4})(([1|2][0-9]{3}[0|1][0-9][0-3][0-9][0-9]{3}[X0-9])|([0-9]{2}[0|1][0-9][0-3][0-9][0-9]{3})) |
匹配空格/空行:
匹配空行的正则表达式:n[s| ]*r
匹配首尾空格的正则表达式:(^s*)|(s*$)
匹配中文字符的正则表达式: [u4e00-u9fa5]
匹配数字:
只能输入数字:"^[0-9]*$"
整数或者小数:^[0-9]+.{0,1}[0-9]{0,2}$
只能输入至少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"*$
只能输入长度为3的字符:"^.{3}$"
匹配字母:
只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"
只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"
只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"
只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"
只能输入由数字、26个英文字母或者下划线组成的字符串:"^w+$"
验证是否含有^%&',;=?$"等字符:"[^%&',;=?$x22]+"
下面附一些自己的正则表达式应用
代码如下 | 复制代码 |
function pregTP($test){ /** 电话号码匹配 电话号码规则: 区号:3到5位,大部分都是四位,北京(010)和上海市(021)三位,西藏有部分五位,可以包裹在括号内也可以没有 如果有区号由括号包裹,则在区号和号码之间可以有0到1个空格,如果区号没有由括号包裹,则区号和号码之间可以有两位长度的 或者- 号码:7到8位的数字 例如:(010) 12345678 或者 (010)12345678 或者 010 12345678 或者 010--12345678 */ $rule = '/^((((010)|(021)|(0d{3,4})))( ?)([0-9]{7,8}))|((010|021|0d{3,4}))([- ]{1,2})([0-9]{7,8})$/A'; preg_match($rule,$test,$result); return $result; } |
代码如下 | 复制代码 |
function pregURL($test){ /** 匹配url url规则: 例 协议://域名(www/tieba/baike...).名称.后缀/文件路径/文件名 http://www.111cn.net 协议://域名(www/tieba/baike...).名称.后缀/文件路径/文件名?参数 www.www.111cn.net 协议://域名(www/tieba/baike...).名称.后缀/文件路径/文件名/参数 http://www.111cn.net 协议:可有可无,由大小写字母组成;不写协议则不应存在://,否则必须存在:// 域名:必须存在,由大小写字母组成 名称:必须存在,字母数字汉字 后缀:必须存在,大小写字母和.组成 文件路径:可有可无,由大小写字母和数字组成 文件名:可有可无,由大小写字母和数字组成 参数:可有可无,存在则必须由?开头,即存在?开头就必须有相应的参数信息 */ $rule = '/^(([a-zA-Z]+)(://))?([a-zA-Z]+).(w+).([w.]+)(/([w]+)/?)*(/[a-zA-Z0-9]+.(w+))*(/([w]+)/?)*(?(w+=?[w]*))*((&?w+=?[w]*))*$/'; preg_match($rule,$test,$result); return $result; } |
代码如下 | 复制代码 |
function pregPOS($test){ /** 匹配邮编 规则:六位数字,第一位不能为0 */ $rule ='/^[1-9]d{5}$/'; preg_match($rule,$test,$result); return $result; } |
代码如下 | 复制代码 |
function pregCh($test){ //utf8下匹配中文 $rule ='/([x{4e00}-x{9fa5}]){1}/u'; preg_match_all($rule,$test,$result); return $result; } |
代码如下 | 复制代码 |
function pregTI($test){ |
代码如下 | 复制代码 |
function pregIP($test){ /** 匹配ip 规则: **1.**2.**3.**4 **1可以是一位的 1-9,两位的01-99,三位的001-255 **2和**3可以是一位的0-9,两位的00-99,三位的000-255 **4可以是一位的 1-9,两位的01-99,三位的001-255 四个参数必须存在 */ $rule = '/^((([1-9])|((0[1-9])|([1-9][0-9]))|((00[1-9])|(0[1-9][0-9])|((1[0-9]{2})|(2[0-4][0-9])|(25[0-5])))).)((([0-9]{1,2})|(([0-1][0-9]{2})|(2[0-4][0-9])|(25[0-5]))).){2}(([1-9])|((0[1-9])|([1-9][0-9]))|(00[1-9])|(0[1-9][0-9])|((1[0-9]{2})|(2[0-4][0-9])|(25[0-5])))$/'; preg_match($rule,$test,$result); return $result; } |

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

華為正在全球推出Watch GT 5和Watch GT 5 Pro智慧手錶的軟體版本5.0.0.100(C00M01)。這兩款智慧手錶最近在歐洲推出,標準型號是該公司最便宜的型號。這和諧

《鐵拳》系列總監原田勝宏曾認真嘗試將桑德斯上校帶入這款標誌性格鬥遊戲中。在接受 TheGamer 採訪時,原田透露,他向日本肯德基提出了這個想法,希望將這位快餐傳奇人物納入其中。

特斯拉正在推出最新的全自動駕駛(監督)版本12.5.5,並最終帶來了承諾的Cybertruck FSD 選項,距離皮卡上市十個月後,該功能包含在基礎系列的裝飾價格中。 F

Garmin 將於本月底為其最新的高階智慧手錶提供一組新的穩定更新。回顧一下,該公司發布了系統軟體 11.64,以解決 Enduro 3、Fenix E 和 Fenix 8 的高電池消耗問題(亞馬遜售價 1,099.99 美元)。

2024 年 9 月早些時候,Anker 的 Zolo 140W 充電器被洩露,這是該公司首款帶有顯示器的壁式充電器,這引起了轟動。現在,小李TV在YouTube上發布的新開箱影片讓我們親眼目睹了這款hi

小米即將在中國推出米家石墨烯油汀暖爐。該公司最近在其優品平台上成功舉辦了一次智慧家居產品眾籌活動。根據頁面顯示,該設備已開始出貨至

三星期待已久的「特別版」可折疊手機的推出又迎來了另一個轉折。最近幾週,有關所謂 Galaxy Z Fold 特別版的傳言相當安靜。相反,焦點已轉移到 Galaxy S25 系列,包括

Manjaro 已有十多年的歷史,被認為是最用戶友好的 Linux 發行版之一,適合初學者和高級用戶,易於安裝和使用。這個基於 Arch 的發行版主要在奧地利、德國和法國開發
