成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

正則表達(dá)式字符集探究

開(kāi)發(fā) 后端
正則表達(dá)式字符集的使用是如何的呢?我們?cè)谑褂谜齽t表達(dá)式的時(shí)候很多時(shí)候會(huì)碰到大量的數(shù)據(jù),那么這個(gè)時(shí)候正則表達(dá)式字符集會(huì)給我們帶來(lái)什么驚喜呢?那本文就向你介紹詳細(xì)的內(nèi)容。

正則表達(dá)式字符集是什么呢?我們?cè)谑褂谜齽t表達(dá)式的時(shí)候,正則表達(dá)式字符集起到什么作用呢?那么這里就向你介紹一下正則表達(dá)式字符集的概念以及所包含的具體的方法和使用。

正則表達(dá)式字符集是由一對(duì)方括號(hào)“[]”括起來(lái)的正則表達(dá)式字符集合。使用正則表達(dá)式字符集,你可以告訴正則表達(dá)式引擎僅僅匹配多個(gè)字符中的一個(gè)。如果你想匹配一個(gè)“a”或一個(gè)“e”,使用﹤﹤[ae]﹥﹥。你可以使用﹤﹤gr[ae]y﹥﹥匹配gray或grey。這在你不確定你要搜索的字符是采用美國(guó)英語(yǔ)還是英國(guó)英語(yǔ)時(shí)特別有用。相反,﹤﹤gr[ae]y﹥﹥將不會(huì)匹配graay或graey。正則表達(dá)式字符集中的字符順序并沒(méi)有什么關(guān)系,結(jié)果都是相同的。

你可以使用連字符“-”定義一個(gè)字符范圍作為正則表達(dá)式字符集。﹤﹤[0-9]﹥﹥匹配0到9之間的單個(gè)數(shù)字。你可以使用不止一個(gè)范圍。﹤﹤[0-9a-fA-F] ﹥﹥匹配單個(gè)的十六進(jìn)制數(shù)字,并且大小寫(xiě)不敏感。你也可以結(jié)合范圍定義與單個(gè)字符定義。﹤﹤[0-9a-fxA-FX]﹥﹥匹配一個(gè)十六進(jìn)制數(shù)字或字母X。再次強(qiáng)調(diào)一下,字符和范圍定義的先后順序?qū)Y(jié)果沒(méi)有影響。

◆正則表達(dá)式字符集的一些應(yīng)用

查找一個(gè)可能有拼寫(xiě)錯(cuò)誤的單詞,比如﹤﹤sep[ae]r[ae]te﹥﹥ 或 ﹤﹤li[cs]en[cs]e﹥﹥。

查找程序語(yǔ)言的標(biāo)識(shí)符,﹤﹤A-Za-z_][A-Za-z_0-9]*﹥﹥。(*表示重復(fù)0或多次)

查找C風(fēng)格的十六進(jìn)制數(shù)﹤﹤0[xX][A-Fa-f0-9]+﹥﹥。(+表示重復(fù)一次或多次)

◆取反正則表達(dá)式字符集

在左方括號(hào)“[”后面緊跟一個(gè)尖括號(hào)“^”,將會(huì)對(duì)正則表達(dá)式字符集取反。結(jié)果是正則表達(dá)式字符集將匹配任何不在方括號(hào)中的字符。不像“.”,取反正則表達(dá)式字符集是可以匹配回車(chē)換行符的。

需要記住的很重要的一點(diǎn)是,取反正則表達(dá)式字符集必須要匹配一個(gè)字符。﹤﹤q[^u]﹥﹥并不意味著:匹配一個(gè)q,后面沒(méi)有u跟著。它意味著:匹配一個(gè)q,后面跟著一個(gè)不是u的字符。所以它不會(huì)匹配“Iraq”中的q,而會(huì)匹配“Iraq is a country”中的q和一個(gè)空格符。事實(shí)上,空格符是匹配中的一部分,因?yàn)樗且粋€(gè)“不是u的字符”。

如果你只想匹配一個(gè)q,條件是q后面有一個(gè)不是u的字符,我們可以用后面將講到的向前查看來(lái)解決。

◆正則表達(dá)式字符集中的元字符

需要注意的是,在正則表達(dá)式字符集中只有4個(gè) 字符具有特殊含義。它們是:“] \ ^ -”。“]”代表正則表達(dá)式字符集定義的結(jié)束;“\”代表轉(zhuǎn)義;“^”代表取反;“-”代表范圍定義。其他常見(jiàn)的元字符在正則表達(dá)式字符集定義內(nèi)部都是正常字符,不需要轉(zhuǎn)義。例如,要搜索星號(hào)*或加號(hào)+,你可以用﹤﹤[+*]﹥﹥。當(dāng)然,如果你對(duì)那些通常的元字符進(jìn)行轉(zhuǎn)義,你的正則表達(dá)式一樣會(huì)工作得很好,但是這會(huì)降低可讀性。

在正則表達(dá)式字符集定義中為了將反斜杠“\”作為一個(gè)文字字符而非特殊含義的字符,你需要用另一個(gè)反斜杠對(duì)它進(jìn)行轉(zhuǎn)義。﹤﹤[\\x]﹥﹥將會(huì)匹配一個(gè)反斜杠和一個(gè)X。“]^-”都可以用反斜杠進(jìn)行轉(zhuǎn)義,或者將他們放在一個(gè)不可能使用到他們特殊含義的位置。我們推薦后者,因?yàn)檫@樣可以增加可讀性。比如對(duì)于字符“^”,將它放在除了左括號(hào)“[”后面的位置,使用的都是文字字符含義而非取反含義。如﹤﹤[x^]﹥﹥會(huì)匹配一個(gè)x或^。﹤﹤[]x]﹥﹥會(huì)匹配一個(gè)“]”或“x”。﹤﹤[-x]﹥﹥或﹤﹤[x-]﹥﹥都會(huì)匹配一個(gè)“-”或“x”。

◆正則表達(dá)式字符集的簡(jiǎn)寫(xiě)

因?yàn)橐恍┱齽t表達(dá)式字符集非常常用,所以有一些簡(jiǎn)寫(xiě)方式。

﹤﹤\d﹥﹥代表﹤﹤[0-9]﹥﹥;

﹤﹤\w﹥﹥代表單詞字符。這個(gè)是隨正則表達(dá)式實(shí)現(xiàn)的不同而有些差異。絕大多數(shù)的正則表達(dá)式實(shí)現(xiàn)的單詞正則表達(dá)式字符集都包含了﹤﹤A-Za-z0-9_]﹥﹥。

﹤﹤\s﹥﹥代表“白字符”。這個(gè)也是和不同的實(shí)現(xiàn)有關(guān)的。在絕大多數(shù)的實(shí)現(xiàn)中,都包含了空格符和Tab符,以及回車(chē)換行符﹤﹤\r\n﹥﹥。

正則表達(dá)式字符集的縮寫(xiě)形式可以用在方括號(hào)之內(nèi)或之外。﹤﹤\s\d﹥﹥匹配一個(gè)白字符后面緊跟一個(gè)數(shù)字。﹤﹤[\s\d]﹥﹥匹配單個(gè)白字符或數(shù)字。﹤﹤[\da-fA-F]﹥﹥將匹配一個(gè)十六進(jìn)制數(shù)字。

取反正則表達(dá)式字符集的簡(jiǎn)寫(xiě)

  1. ﹤﹤[\S]﹥﹥ = ﹤﹤[^\s]﹥﹥  
  2.  
  3. ﹤﹤[\W]﹥﹥ = ﹤﹤[^\w]﹥﹥  
  4.  
  5. ﹤﹤[\D]﹥﹥ = ﹤﹤[^\d]﹥﹥  

◆正則表達(dá)式字符集的重復(fù)

如果你用“?*+”操作符來(lái)重復(fù)一個(gè)正則表達(dá)式字符集,你將會(huì)重復(fù)整個(gè)正則表達(dá)式字符集。而不僅是它匹配的那個(gè)字符。正則表達(dá)式﹤﹤[0-9]+﹥﹥會(huì)匹配837以及222。

如果你僅僅想重復(fù)被匹配的那個(gè)字符,可以用向后引用達(dá)到目的。我們以后將講到向后引用。

正則表達(dá)式字符集相關(guān)的內(nèi)容就向你介紹到這里,希望那個(gè)對(duì)你了解和掌握正則表達(dá)式字符集有所幫助。

【編輯推薦】

  1. 淺析PHP正則表達(dá)式的應(yīng)用實(shí)例
  2. 正則表達(dá)式匹配實(shí)例詳解
  3. 正則表達(dá)式匹配數(shù)字實(shí)例解析
  4. 正則表達(dá)式匹配字符串實(shí)現(xiàn)詳解
  5. 正則表達(dá)式入門(mén)必學(xué)的星星點(diǎn)點(diǎn)
責(zé)任編輯:仲衡 來(lái)源: IT168
相關(guān)推薦

2009-09-16 13:44:03

PHP正則表達(dá)式字符集

2010-08-09 14:43:25

Flex正則表達(dá)式

2009-09-16 11:27:52

PHP正則表達(dá)式正則表達(dá)式實(shí)現(xiàn)

2009-09-16 11:17:12

PHP正則表達(dá)式定位字

2020-09-04 09:16:04

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

2018-09-27 15:25:08

正則表達(dá)式前端

2009-09-16 10:59:24

PHP正則表達(dá)式元字符

2016-11-10 16:21:22

Java 正則表達(dá)式

2009-09-16 17:15:57

正則表達(dá)式引擎

2022-01-04 11:35:03

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

2023-09-13 08:12:45

2009-04-22 15:06:16

正則表達(dá)式PHP特殊字符

2024-09-14 09:18:14

Python正則表達(dá)式

2009-10-26 15:33:27

VB.NET正則表達(dá)式

2022-03-28 06:19:14

正則表達(dá)式開(kāi)發(fā)

2021-01-27 11:34:19

Python正則表達(dá)式字符串

2009-02-18 09:48:20

正則表達(dá)式Java教程

2019-07-17 15:45:47

正則表達(dá)式字符串前端

2009-09-16 18:19:34

正則表達(dá)式組

2011-06-02 12:34:16

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

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

主站蜘蛛池模板: 黄色香蕉视频在线观看 | 日本三级网| 国产视频第一页 | 久久国产综合 | 国产精品视频网 | 久久久成人精品 | 日韩一级不卡 | 六月成人网 | 久久午夜影院 | 午夜免费在线电影 | 日本久久精品视频 | 日本成人福利视频 | 成人国产精品久久久 | 久久一区二区三区四区五区 | 日本三级播放 | 欧美精品二区 | 国产乱码精品一区二区三区中文 | 久久精品日产第一区二区三区 | 久久精品亚洲精品国产欧美 | 影音先锋成人资源 | 911精品美国片911久久久 | 久草在线视频中文 | 99re在线视频 | 国产精品一区在线播放 | 新91视频网 | 91久久综合亚洲鲁鲁五月天 | 日本 欧美 三级 高清 视频 | 综合国产第二页 | 精品国产18久久久久久二百 | 91精品一区 | 99精品国自产在线 | 三级黄视频在线观看 | 国产成人综合一区二区三区 | 亚洲国产二区 | 狠狠干天天干 | 免费超碰 | 亚洲视频在线观看 | 日韩成年人视频在线 | 午夜一区二区三区 | 久久综合九色综合欧美狠狠 | 欧美1区2区 |