熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

正則表達式的基本語法

2013-11-23 19:22:56  來源: Java核心技術 

  首先讓我們看兩個特殊的符號^$他們的作用是分別指出一個字符串的開始和結束例子如下

^The表示所有以The開始的字符串(ThereThe cat等)
of despair$表示所以以of despair結尾的字符串
^abc$表示開始和結尾都是abc的字符串——呵呵只有abc自己了
notice表示任何包含notice的字符串

象最後那個例子如果你不使用兩個特殊字符你就在表示要查找的串在被查找串的任意部分——你並
不把它定位在某一個頂端

其它還有*+?這三個符號表示一個或一序列字符重復出現的次數它們分別表示沒有或
更多一次或更多還有沒有或一次下面是幾個例子

ab*表示一個字符串有一個a後面跟著零個或若干個ba ab abbb……)
ab+表示一個字符串有一個a後面跟著至少一個b或者更多
ab?表示一個字符串有一個a後面跟著零個或者一個b
a?b+$表示在字符串的末尾有零個或一個a跟著一個或幾個b

你也可以使用范圍用大括號括起用以表示重復次數的范圍

ab{}表示一個字符串有一個a跟著個b(abb
ab{}表示一個字符串有一個a跟著至少個b
ab{}表示一個字符串有一個a跟著個b

請注意你必須指定范圍的下限(如{}而不是{}還有你可能注意到了*+
?相當於{}{}{}
還有一個¦表示操作

hi¦hello表示一個字符串裡有hi或者hello
(b¦cd)ef表示befcdef
(a¦b)*c表示一串ab混合的字符串後面跟一個c

可以替代任何字符

a[]表示一個字符串有一個a後面跟著一個任意字符和一個數字
^{}$表示有任意三個字符的字符串(長度為個字符)

方括號表示某些字符允許在一個字符串中的某一特定位置出現

[ab]表示一個字符串有一個ab(相當於a¦b
[ad]表示一個字符串包含小寫的ad中的一個(相當於a¦b¦c¦d或者[abcd]
^[azAZ]表示一個以字母開頭的字符串
[]%表示一個百分號前有一位的數字
[azAZ]$表示一個字符串以一個逗號後面跟著一個字母或數字結束

你也可以在方括號裡用^表示不希望出現的字符^應在方括號裡的第一位(如%[^azAZ]%
示兩個百分號中不應該出現字母)

為了逐字表達你必須在^$()¦*+?{\這些字符前加上轉移字符\

請注意在方括號中不需要轉義字符


From:http://tw.wingwit.com/Article/program/Java/hx/201311/26752.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.