1. 程式人生 > >正則表示式(二)常用元字元

正則表示式(二)常用元字元

上節講了五種元字元,現在接著繼續講:

一、常用的元字元

. 匹配除換行符以外的任意字元
\w匹配字母或數字或下劃線或漢字
\s匹配任意的空白符
\d匹配數字
\b匹配單詞的開始或結束
^匹配字串的開始
$匹配字串的結束


上面這個正則表示式的意思是: 以0-9之間數字開始,由於有+ 可以是一個或者多個數字 接下來為一個數字 或一個字元或者下劃線結尾

二、字元轉義

 主要是\ 或者 \\ 新增在所修飾前面表示轉義。比如\\.    \\* 


三、重複

* 重複零次或更多次
+重複一次或更多次
?重複零次或一次
{n}重複n次
{n,}重複n次或更多次
{n,m}重複n到m次


上面表示式意思是:以一個或者0 個字元或數字開始 然後一個空格 接著2-7 個字元或者數字,最後用6個數字結束。

四、字元類

用[] 匹配沒有預定義元字元的字元集合(比如母音字母a,e,i,o,u)

例如: [aeiou]就匹配任何一個英文母音字母,[.?!]匹配標點符號(.或?或!)


注意: 第一行沒有匹配成功,原因是第一行中間同時出現了)-,其實上面意思是[) -] 表示空格或者) 或者- 其中一個出現一次或者都不出現

翻譯下上面正則表示式意思就是:

首先是一個轉義字元\(,它能出現0次或1次(?),然後是一個0,後面跟著2個數字(\d{2}),然後是)-空格中的一個,它出現1次或不出現(?),最後是8個數字(\d{8})。

備註:最後例子來源於正則表示式30分鐘入門