国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

正則表達(dá)式介紹及常見(jiàn)用法

開(kāi)發(fā) 開(kāi)發(fā)工具
正則表達(dá)式(Regular Expression),又稱正規(guī)表示法、常規(guī)表示法,在實(shí)際的軟件開(kāi)發(fā)項(xiàng)目中經(jīng)常會(huì)被使用到。它使用單個(gè)字符串來(lái)描述、匹配并獲取一系列符合某個(gè)句法規(guī)則的結(jié)果。

正則表達(dá)式(Regular Expression),又稱正規(guī)表示法、常規(guī)表示法,在實(shí)際的軟件開(kāi)發(fā)項(xiàng)目中經(jīng)常會(huì)被使用到。它使用單個(gè)字符串來(lái)描述、匹配并獲取一系列符合某個(gè)句法規(guī)則的結(jié)果。

正則表達(dá)式起源

1956年,數(shù)學(xué)家Stephen Kleene在Warren McCulloch和Walter Pitts早期神經(jīng)系統(tǒng)工作的基礎(chǔ)上,設(shè)計(jì)出了一個(gè)數(shù)學(xué)符號(hào)體系——regular sets(規(guī)則的集合),這個(gè)東西很快被計(jì)算機(jī)科學(xué)家用于編譯器的掃描或詞法分析。由于正則表達(dá)式強(qiáng)大的文本處理能力,很快被應(yīng)用到Unix的工具軟件grep中;此后,正則表達(dá)式被廣泛應(yīng)用于Unix系操作系統(tǒng)、Perl、PHP,Delphi、JAVAScript、C#(.NET)、JAVA、python、Ruby等語(yǔ)言和開(kāi)發(fā)環(huán)境中。

正則表達(dá)式定義

正則表達(dá)式是用來(lái)描述字符串特定結(jié)構(gòu)(規(guī)則)的語(yǔ)言,由相關(guān)引擎執(zhí)行。正則表達(dá)式形象化的描述如圖1所示。


 

圖1 正則表達(dá)式形象化的描述

正則表達(dá)式作用

1.數(shù)據(jù)驗(yàn)證

測(cè)試輸入的字符串,是否符合一定的規(guī)則,是否允許輸入等。例如,可對(duì)Email地址合法性、網(wǎng)址、電話號(hào)碼、出生年月等進(jìn)行驗(yàn)證。

2.操作文本

用來(lái)識(shí)別文檔中的特定文本、完全刪除該文本或者用其它文本或字符替換。

3.提取子字符串

基于模式匹配,可以查找文檔內(nèi)或輸入域內(nèi)特定的文本,在涉及替換操作時(shí)往往都需要先提取。

正則表達(dá)式基本語(yǔ)法

1.直接量字符(通常是不可見(jiàn)的字符及匹配自身的字符)

2.字符類(可以匹配多種字符)

3.重復(fù)

4.選擇、分組和錨字符

5. 標(biāo)志(標(biāo)示引擎的工作模式)

說(shuō)明:

在正則表達(dá)式前用“(?i)”標(biāo)示,例如:(?i)^root$,則root、Root、ROOT都符合要求。

6.其它

1) 匹配元字符“( [ { \ ^ $ | ) ? * + .”,需要用“\”轉(zhuǎn)義。

例如:匹配“.”,正則表達(dá)式為“\.”。

2) 貪婪量詞與惰性量詞

惰性量詞僅僅在貪婪量詞后面加個(gè)“?”。

用貪婪量詞進(jìn)行匹配時(shí),它首先會(huì)將整個(gè)字符串當(dāng)成一個(gè)匹配,如果匹配成功就退出,如果不匹配,就截去最后一個(gè)字符進(jìn)行匹配;如果不匹配,繼續(xù)將最后一個(gè)字符截去進(jìn)行匹配,直到有字符匹配為止。

用惰性量詞進(jìn)行匹配時(shí),它首先將第一個(gè)字符當(dāng)成一個(gè)匹配,如果成功則退出;如果失敗,則測(cè)試前兩個(gè)字符,依次增加,直到遇到合適的匹配為止 。

例如:“\d+”是貪婪量詞,而“\d+?”是非貪婪(惰性)量詞。

3) 子匹配

內(nèi)部的分組匹配,用“()”標(biāo)示一個(gè)分組。

子匹配的每個(gè)分組都被放在一個(gè)特殊的地方以備將來(lái)使用,這些被存儲(chǔ)的值是分組中的特殊值,稱之為反向引用。

例如:驗(yàn)證輸入的是日期,再提取到月份,其正則表達(dá)式為“^\d{4}\-(\d{2})\-\d{2}$”。

4) 正向前瞻和負(fù)向前瞻

正向前瞻:(?<=字符)或(?=字符)

注意:一定要有等于才行。

負(fù)向前瞻:(?<!字符)或(?!字符)

注意:一定要有不等于才行。

也就是說(shuō),我們可以自己制定匹配的邊界在哪里,這在字符串提取時(shí)常用。

示例:

例1,我們?nèi)?ldquo;#”之前的字符,但是不包括“#”,其正則表達(dá)式:[\w]+(?=#)

例2,我們?nèi)〔辉?ldquo;#”之前的字符,但是不包括“#”,其正則表達(dá)式: [\w]+(?!#)

例3,我們?nèi)?ldquo;<>”之間的字符,但是不包括“<>”,其正則表達(dá)式: (?<=<)[\w]+(?=>)

正則表達(dá)式常見(jiàn)用法

1.數(shù)字

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

2)非正整數(shù): ^((-[1-9][0-9]*)|(0))$

3)負(fù)整數(shù):^-[1-9][0-9]*$

4)整數(shù): ^(0|-?[1-9][0-9]*)$

5)非負(fù)浮點(diǎn)數(shù):^\d+(\.\d+)?$

2.字母

1)英文字符串:^[A-Za-z]+$

2)英文大寫(xiě)串:^[A-Z]+$

3)英文小寫(xiě)串:^[a-z]+$

4)英文字符數(shù)字串:^[A-Za-z0-9]+$

5)英文數(shù)字加下劃線串:^\w+$

3.其它

1.E-mail地址:^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$

2.URL:^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$

3.郵政編碼:^[1-9]\d{5}$

4.中文:^[\u4e00-\u9fA5]+$

5.電話號(hào)碼:^((\d2,3)|(\d{3}\-))?(0\d2,3|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$

6.手機(jī)號(hào)碼:^1\d{10}$

7.首尾空格:(^\s+)|(\s+$)

8.身份證:^(\d{15}|\d{18})$ (注:中國(guó)的身份證為15位或18位)

9.賬號(hào):^[a-zA-Z]\w{4,15}$ (注:字母開(kāi)頭,允許5-16字節(jié),允許字母數(shù)字下劃線)

10.IP:^([1-9]\d{0,1}|1\d{2}|2[0-4]\d|25[0-5])(\.([1-9]\d{0,1}|1\d{2}|2[0-4]\d|25[0-5])){3}$ (IP是由大于等于0且小于等于255的數(shù)字、“.”組成的,驗(yàn)證每個(gè)數(shù)字分項(xiàng)再和“.”拼接就可以了)

總結(jié)

正則表達(dá)式的功能非常的強(qiáng)大,大家在實(shí)際使用到的時(shí)候才能夠感覺(jué)得到。當(dāng)然,要想同時(shí)記住這么多的正則表達(dá)式的規(guī)則,也不是簡(jiǎn)單的事情。大家可以將常見(jiàn)的正則表達(dá)式記錄下來(lái)(就像本文一樣),待需要用到的時(shí)候可以拿出來(lái)參考。

【本文是51CTO專欄作者周兆熊的原創(chuàng)作品,轉(zhuǎn)載請(qǐng)通過(guò)51CTO獲取作者授權(quán)】

責(zé)任編輯:武曉燕 來(lái)源: csdn博客
相關(guān)推薦

2010-08-12 10:35:06

Flex正則表達(dá)式

2010-08-09 13:58:59

Flex正則表達(dá)式

2010-07-19 10:40:16

Perl正則表達(dá)式

2010-07-14 09:37:46

Perl正則表達(dá)式

2011-06-16 16:05:23

正則表達(dá)式

2011-06-16 15:40:28

正則表達(dá)式

2010-03-11 08:55:45

python正則表達(dá)式

2010-07-09 09:11:33

Ruby正則表達(dá)式

2018-09-27 15:25:08

正則表達(dá)式前端

2020-09-04 09:16:04

Python正則表達(dá)式虛擬機(jī)

2009-08-14 17:52:30

C#表達(dá)式工具

2024-09-14 09:18:14

Python正則表達(dá)式

2016-09-12 09:57:08

grep命令表達(dá)式Linux

2016-11-10 16:21:22

Java 正則表達(dá)式

2022-01-04 11:35:03

Linux Shel正則表達(dá)式Linux

2009-09-16 17:15:57

正則表達(dá)式引擎

2023-09-13 08:12:45

2010-08-13 15:23:10

Flex正則表達(dá)式

2010-03-25 18:25:36

Python正則表達(dá)式

2021-01-27 11:34:19

Python正則表達(dá)式字符串
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

亚洲天堂网中文字| 亚洲国产欧美一区二区三区久久| 久久久久久久有限公司| 国产精品午夜一区二区三区| 在线播放国产一区二区三区| 亚洲国产精品精华素| 亚洲国产精品欧美一二99| 成人免费观看视频在线观看| 久久国产乱子精品免费女| 国产传媒欧美日韩| 一区二区传媒有限公司| 亚洲有吗中文字幕| 国产精品久久久久高潮| 日本亚洲不卡| 2019国产精品自在线拍国产不卡| 国产在线一区不卡| 欧美精品一区在线播放| 亚洲精品自拍| 欧美日本黄视频| 伊人精品综合| 久久亚洲影音av资源网| 成人日韩视频| 国产做受高潮69| 老牛国内精品亚洲成av人片| 欧美激情一区二区三区久久久 | 韩国精品在线观看| 亚洲精品在线视频观看| 老司机精品福利视频| 欧美日韩免费观看一区| 制服诱惑一区| 日韩激情中文字幕| 国产一区二区丝袜高跟鞋图片| 亚洲精品福利电影| 在线观看久久久久久| 亚洲成a人片| 国产一区二区黑人欧美xxxx| 九色视频网站入口| 2020久久国产精品| 欧美电影免费| 久久久精品中文字幕| 五月天丁香综合久久国产| 色88888久久久久久影院野外| 最近中文字幕mv2018在线高清| 色老汉av一区二区三区| 国产精品186在线观看在线播放| 6080日韩午夜伦伦午夜伦| 午夜免费福利在线观看| 91啦中文在线观看| 日本 片 成人 在线| 亚洲激情自拍视频| av在线资源网| 精品爽片免费看久久| 日韩成人精品一区二区三区| 69视频在线播放| 欧美精品一线| 伊人久久大香线蕉综合75| www.欧美亚洲| 天天干狠狠干| 日韩欧美美女一区二区三区| 亚洲a∨精品一区二区三区导航| 欧美日韩国产二区| 国产专区一区| 久久久亚洲精品无码| 亚洲一区视频在线| 国产激情在线播放| 日韩av不卡电影| 日韩高清电影一区| 国产精品高潮呻吟视频| 欧美性猛交xxxx| 国产在线视频欧美一区| 欧美亚洲国产一区二区三区va| 欧美韩日亚洲| 91国产在线精品| 欧美一级专区| 99热在线免费观看| 精品久久久久久最新网址| youjizz亚洲| 精品一区二区国产| 国产精品日日摸夜夜摸av| 91se在线| 欧美久久精品午夜青青大伊人| 午夜激情一区| 精品久久久久久久无码| 日韩一区二区高清| 国产最新精品| av一区二区三区免费观看| 天天色综合成人网| 韩日精品一区| 国产精品福利视频| 国产精品欧美一区二区三区| 精品麻豆一区二区三区| 欧美日韩国产综合新一区| 欧美xxxx做受欧美护士| 亚洲精品成人免费| 欧美gvvideo网站| 日本免费黄视频| 日韩欧美另类在线| 成人免费观看cn| 亚洲香蕉伊在人在线观| 日韩成人在线电影| 欧美激情一区二区三区| 国产精品久久| www.一区| 亚洲 欧美 另类人妖| 不卡中文字幕av| 精品午夜电影| 肥熟一91porny丨九色丨| 337p亚洲精品色噜噜狠狠| 国产99精品在线观看| 久久在线视频| 成人精品久久| 一本一本久久| 欧美资源在线| 成人在线高清| 成人免费看黄网址| 欧美另类精品xxxx孕妇| 天堂在线亚洲视频| 国产成人精品123区免费视频| 亚洲aⅴ男人的天堂在线观看| 欧美激情一区在线| 波多野结衣在线一区二区| 成人精品3d动漫| 国产一级二级在线| 中文乱码字幕高清在线观看| 最近中文字幕一区二区| 二级片在线观看| 国产精品久久久久久一区二区| 88在线观看91蜜桃国自产| 最新成人av在线| 狠狠色丁香久久婷婷综| 亚洲情侣在线| av综合网址| 波多野结衣av在线播放| 精品日韩在线播放| 91国产在线免费观看| 欧美国产乱视频| 亚洲аv电影天堂网| 午夜精品福利久久久| 国产欧美日韩在线视频| 日韩毛片一二三区| 一区二区三区美女视频| 欧美性大战久久久久久久蜜臀 | 色婷婷国产精品综合在线观看| 在线日本制服中文欧美| 97影院理论| 人偷久久久久久久偷女厕| 久久久999精品免费| 久久久亚洲精品无码| 国产精品劲爆视频| 欧美日韩视频一区二区| 国产精品一区二区久激情瑜伽| 无码国模国产在线观看| 免费黄色电影在线观看| 精品国产一区三区| 国产树林野战在线播放| 成人av在线天堂| 中文字幕亚洲综合久久筱田步美| 婷婷亚洲久悠悠色悠在线播放| 可以免费看不卡的av网站| 波多野结衣一区二区三区免费视频| 欧美午夜黄色| 伊人网在线视频| www.av在线播放| 欧美91看片特黄aaaa| 亚洲精品videossex少妇| 日韩伦理片在线观看| 久久国产精品久久精品国产| 国产精品成人国产乱一区| 午夜精品久久久久久久久久久久久 | 亚洲国产日本| 蜜桃视频一区二区三区| 不卡高清视频专区| 99久久伊人久久99| 一个色综合网站| 91亚洲精品一区二区乱码| 一道本一区二区三区| 亚洲激情自拍| 国产精品欧美极品| 亚洲第一av网站| 91国内揄拍国内精品对白| 日韩精品不卡| 色综合天天综合在线视频| 欧美一区二区私人影院日本| 6080亚洲精品一区二区| 欧美另类z0zxhd电影| 国产91精品久| 亚洲欧美日韩精品在线| 91国产精品视频在线观看| 9999热视频在线观看| 日韩啪啪电影网| 国产福利91精品| 欧美视频在线看| 国产精品网红直播| 美女在线视频一区二区| √8天堂资源地址中文在线| 久久亚洲影视| 亚洲图片欧美一区| 欧美中文字幕在线播放| 动漫av免费观看| 欧美专区视频|