RELATEED CONSULTING
相關咨詢
選擇下列産品馬上(shàng)在線溝通(tōng)
服務時(shí)間(jiān):9:00-18:00
你(nǐ)可(kě)能遇到了下面的問題
關閉右側工具欄
WEB開(kāi)發中常用的正則表達式
  • 作(zuò)者:admin
  • 發表時(shí)間(jiān):2013-07-02 14:16:54
  • 來(lái)源:未知

在計(jì)算(suàn)機科學中,正則表達式用來(lái)描述或者匹配一系列符合某個(gè)句法規則的字符串的單個(gè)字符串。在WEB開(kāi)發中,正則表達式通(tōng)常用來(lái)檢測、查找替換某些(xiē)符合規則的字符串,如檢測用戶輸入E-mai格式是否正确,采集符合規則的頁面內(nèi)容等等。

今天我們分别用PHP和(hé)Javscript向大(dà)家(jiā)介紹WEB開(kāi)發中最常用最實用的正則表達式及其用法,正則表達式是一門(mén)學科,不可(kě)能使用一篇文章來(lái)講解完,理(lǐ)論的東西網上(shàng)很(hěn)多(duō),有(yǒu)興趣的同學可(kě)以搜一大(dà)把。不過你(nǐ)也許沒必要去埋頭學習琢磨不透的正則表達式,看本文和(hé)實例給您呈現常用、實用的正則表達式。

查看演示DEMO

PHP常用表達式用法

1.匹配正整數(shù):/^[1-9]\d*$/

2.匹配非負整數(shù)(正整數(shù)+0):/^\d+$/

3.匹配中文:/^[\x{4e00}-\x{9fa5}]+$/u

4.匹配Email:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/

5.匹配網址URL:(((f|ht){1}(tp|tps)://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)

6.匹配字母開(kāi)頭,5-16字符,字母數(shù)字下劃線:/^[a-zA-Z][a-zA-Z0-9_]{4,15}$/

7.匹配數(shù)字,字母,下劃線,中文:/^[\x{4e00}-\x{9fa5}A-Za-z0-9_]+$/u

8.匹配中國郵政編碼:/^[1-9]\d{5}$/

9.匹配IP地址:/\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/

10.匹配中國大(dà)陸身份證:/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}(\d|x|X)$/

PHP正則驗證字符串方法舉例:

$str = "中文啊";
$preg = "/^[\x{4e00}-\x{9fa5}]+$/u"; //匹配中文
if(preg_match($preg,$str,$arr)){
 	$msg = '匹配成功!';
}else{
 	$msg = '匹配失敗!';
}
echo $msg;

Javascript常用表達式用法

1.匹配正整數(shù):/^[0-9]*[1-9][0-9]*$/

2.匹配非負整數(shù)(正整數(shù)+0):/^\d+$/

3.匹配中文:/^[\u4e00-\u9fa5]/

4.匹配Email:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/

5.匹配網址URL:/^(f|ht){1}(tp|tps):\/\/([\w-]+\.)+[\w-]+(\/[\w- ./?%&=]*)?/

6.匹配字母開(kāi)頭,5-16字符,字母數(shù)字下劃線:/^[a-zA-Z][a-zA-Z0-9_]{4,15}$/

7.匹配數(shù)字,字母,下劃線,中文:/^[\u4e00-\u9fa5A-Za-z0-9_]+$/

8.匹配中國郵政編碼:/^[1-9]\d{5}$/

9.匹配IP地址:/\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/

10.匹配中國大(dà)陸身份證:/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}(\d|x|X)$/

Javascript正則驗證字符串方法舉例:

var str = "abc@126.com";
var preg = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/; //匹配Email
if(preg.test(str)){
	var msg = "匹配成功";
}else{
	var msg = "匹配失敗!";
}
alert(msg);

這是我整理(lǐ)的10中常見的表達式,您可(kě)以查看demo,使用示例來(lái)測試字正則表達式,祝您使用愉快!。