日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

正則表達(dá)式使用詳解( 二 )



s:用于匹配單個空格符 , 包括tab鍵和換行符;

S:用于匹配除單個空格符之外的所有字符;

d:用于匹配從0到9的數(shù)字;

w:用于匹配字母 , 數(shù)字或下劃線字符;

W:用于匹配所有與w不匹配的字符;

. :用于匹配除換行符之外的所有字符 。

(說明:我們可以把s和S以及w和W看作互為逆運算)

下面 , 我們就通過實例看一下如何在正則表達(dá)式中使用上述元字符 。

/s /

上述正則表達(dá)式可以用于匹配目標(biāo)對象中的一個或多個空格字符 。

/d000/

如果我們手中有一份復(fù)雜的財務(wù)報表 , 那么我們可以通過上述正則表達(dá)式輕而易舉的查找到所有總額達(dá)千元的款項 。

除了我們以上所介紹的元字符之外 , 正則表達(dá)式中還具有另外一種較為獨特的專用字符 , 即定位符 。定位符用于規(guī)定匹配模式在目標(biāo)對象中的出現(xiàn)位置 。

較為常用的定位符包括: “^”, “$”, “b” 以及 “B” 。其中 , “^”定位符規(guī)定匹配模式必須出現(xiàn)在目標(biāo)字符串的開頭 , “$”定位符規(guī)定匹配模式必須出現(xiàn)在目標(biāo)對象的結(jié)尾 , b定位符規(guī)定匹配模式必須出現(xiàn)在目標(biāo)字符串的開頭或結(jié)尾的兩個邊界之一 , 而“B”定位符則規(guī)定匹配對象必須位于目標(biāo)字符串的開頭和結(jié)尾兩個邊界之內(nèi) , 即匹配對象既不能作為目標(biāo)字符串的開頭 , 也不能作為目標(biāo)字符串的結(jié)尾 。同樣 , 我們也可以把“^”和“$”以及“b”和“B”看作是互為逆運算的兩組定位符 。舉例來說:

/^hell/

因為上述正則表達(dá)式中包含“^”定位符 , 所以可以與目標(biāo)對象中以 “hell”, “hello”或 “hellhound”開頭的字符串相匹配 。

/ar$/

因為上述正則表達(dá)式中包含“$”定位符 , 所以可以與目標(biāo)對象中以 “car”, “bar”或 “ar” 結(jié)尾的字符串相匹配 。

/bbom/

因為上述正則表達(dá)式模式以“b”定位符開頭 , 所以可以與目標(biāo)對象中以 “bomb”, 或 “bom”開頭的字符串相匹配 。

/manb/

因為上述正則表達(dá)式模式以“b”定位符結(jié)尾 , 所以可以與目標(biāo)對象中以 “human”, “woman”或 “man”結(jié)尾的字符串相匹配 。

為了能夠方便用戶更加靈活的設(shè)定匹配模式 , 正則表達(dá)式允許使用者在匹配模式中指定某一個范圍而不局限于具體的字符 。例如:

/[A-Z]/

上述正則表達(dá)式將會與從A到Z范圍內(nèi)任何一個大寫字母相匹配 。

/[a-z]/

上述正則表達(dá)式將會與從a到z范圍內(nèi)任何一個小寫字母相匹配 。

/[0-9]/

上述正則表達(dá)式將會與從0到9范圍內(nèi)任何一個數(shù)字相匹配 。

/([a-z][A-Z][0-9]) /

上述正則表達(dá)式將會與任何由字母和數(shù)字組成的字符串 , 如 “aB0” 等相匹配 。這里需要提醒用戶注意的一點就是可以在正則表達(dá)式中使用 “()” 把字符串組合在一起 ?!?)”符號包含的內(nèi)容必須同時出現(xiàn)在目標(biāo)對象中 。因此 , 上述正則表達(dá)式將無法與諸如 “abc”等的字符串匹配 , 因為“abc”中的最后一個字符為字母而非數(shù)字 。

如果我們希望在正則表達(dá)式中實現(xiàn)類似編程邏輯中的“或”運算 , 在多個不同的模式中任選一個進(jìn)行匹配的話 , 可以使用管道符 “|” 。例如:

/to|too|2/

上述正則表達(dá)式將會與目標(biāo)對象中的 “to”, “too”, 或 “2” 相匹配 。

正則表達(dá)式中還有一個較為常用的運算符 , 即否定符 “[^]” 。與我們前文所介紹的定位符 “^” 不同 , 否定符 “[^]”規(guī)定目標(biāo)對象中不能存在模式中所規(guī)定的字符串 。例如:

/[^A-C]/

上述字符串將會與目標(biāo)對象中除A , B , 和C之外的任何字符相匹配 。一般來說 , 當(dāng)“^”出現(xiàn)在 “[]”內(nèi)時就被視做否定運算符;而當(dāng)“^”位于“[]”之外 , 或沒有“[]”時 , 則應(yīng)當(dāng)被視做定位符 。

推薦閱讀