ruby正規表示式

2021-08-29 15:13:57 字數 858 閱讀 1048

ruby中常會用到正規表示式。正規表示式是用來表達字串的模式(pattern)的。也可以這麼理解:我們使用正規表示式來表示某種搜尋規則,然後使用該正規表示式來完成字串的搜尋工作。舉個例子,假定有這樣的搜尋規則:「字串以』foo』開始,以』r』結束」,那麼就可以使用以下正規表示式來表示該規則。

/^foo.*r$/

ruby用//將正規表示式括起來。^表示開頭,$表示結尾,.*表示0個以上的任意字元。

現在就講講正規表示式的規則的寫法。正規表示式中有很多上述的具有特別意義的字元。首先是下列字元。

[ ] 範圍描述符。[a-z]表示從a到z之間的任意乙個。

( 注意大小寫的區分:)

\w 英文本母和數字。即[0-9 a-z a-z]。

\w 非英文本母和數字

\s 空字元,即[\t\n\r\f]。

\s 非空字元。

\d 數字,即[0-9]。

\d 非數字。

\b 詞邊界字元(在範圍描述符外部時)

\b 非詞邊界字元

\b 退格符(0x08)(在範圍描述符內部時)

* 前面元素出現0次以上

+ 前面元素出現1次以上

前面元素最少出現m次,最多出現n次

? 前面元素出現0次或1次

| 選擇

( ) 群組

其他字元 該字元本身

例如,「^f[a-z]+」表示「第乙個字元是f,後面是若干個從a到z之間的字元」,可以是「fobar」或「fool」等等。這種表達法就是正規表示式(regular expression)。在搜尋字串時正規表示式非常有用,因此在unix的世界裡,正規表示式得到了廣泛的應用。grep程式就是個代表。許多人是不是經常會用到它呢?

[url]

ruby正規表示式

ruby用 將正規表示式括起來。表示開頭,表示結尾,表示0個以上的任意字元。現在就講講正規表示式的規則的寫法。正規表示式中有很多上述的具有特別意義的字元。首先是下列字元。範圍描述符。a z 表示從a到z之間的任意乙個。w 英文本母和數字。即 0 9 a z a z w 非英文本母和數字 s 空字元,...

Ruby 正規表示式

ruby的正規表示式以 作為構造方法。表示式返回乙個regexp的物件。一般規則 a 匹配字元a。匹配特殊字元?特殊字元包括 匹配任意字元,例如 a.匹配ab和ac。ab c 匹配ac和bc,之間代表範圍。例如 a z a za z0 9 a za z0 9 匹配不在該範圍內的字串。d 代表任意數字...

ruby 正規表示式

ruby支援的正規表示式符號 元字元 有這麼個規則 不帶 的數字和字母不是元字元 帶 的符號也不是元字元 下文中出現的 匹配多位元組字元的正規表示式 是指,通過使用 kcode進行設定,或顯式地使用漢字選項 請參考正規表示式字面值 等方式進行的匹配多位元組字元的正規表示式。行首。與字串的頭部或換行符...