搜尋此網誌

2012年11月25日 星期日

Regular expression


String pattern = "^(0{0,2}[0-9]|0?[1-9][0-9]|1[0-7][0-9])$";

^ :  代表一行的開始.
$: 代表一行的結束.
(  ) : 為capture group.
X | Y   : X 或 Y
X{n,m} : X 最少為n次,但不超過m次
[a-z] : a 到 z
X?  : x一次或完全沒有.

0{0,2}[0-9]

ex: 000 , 001 , 009


0?[1-9][0-9]

ex: 010  , 099


1[0-7][0-9])

ex : 100 ~ 179.

所以上列regular expression為找 000 到 179的 pattern寫法