Java正则表达式
一、正則表達(dá)式概念
正則表達(dá)式(Regular Expression),又稱規(guī)則表達(dá)式。正則表達(dá)式是對字符串操作的一種邏輯公式,就是用事先定義好的一些特定字符、及這些特定字符的組合,組成一個"規(guī)則字符串",這個"規(guī)則字符串"用來表達(dá)對字符串的一種過濾邏輯。
正則表達(dá)式是對字符串(包括普通字符(例如,a 到 z 之間的字母)和特殊字符(稱為"元字符"))操作的一種邏輯公式,就是用事先定義好的一些特定字符、及這些特定字符的組合,組成一個"規(guī)則字符串",這個"規(guī)則字符串"用來表達(dá)對字符串的一種過濾邏輯。正則表達(dá)式是一種文本模式,該模式描述在搜索文本時要匹配的一個或多個字符串。
正則表達(dá)式的靈活性、邏輯性和功能性非常強(qiáng),可以迅速地用極簡單的方式達(dá)到字符串的復(fù)雜控制。
二、正則表達(dá)式的字符
正則表達(dá)式由一些普通字符和一些元字符(metacharacters)組成。普通字符包括大小寫的字母和數(shù)字,而元字符則具有特殊的含義,我們下面會給予解釋。
三、正則表達(dá)式用途
1、匹配字符串
?以String類中的matches方法為例。乍一看,matches方法和equals方法很像。比如:
?這兩條語句返回值:
但是matches方法的功能更強(qiáng)大。它不僅可以匹配一個固定的字符串,還可以匹配符合一個模式的字符串集。比如:
上面這些語句的結(jié)果都是true。其中"Java.*"是一個正則表達(dá)式。?它描述了一個字符串模式,以Java開始,后面跟0個或多個字符串。
2、替換和拆分字符串
String類的replaceAll,replaceFirst,split方法,用于替換和拆分字符串。其中replaceAll方法用于替換所有匹配的子字符串,replaceFirst方法用于替換第一個匹配的子字符串。比如:
結(jié)果為:
?split(regex)方法使用匹配的分隔符將一個字符串拆分成子字符串。而split(regex,limit)方法中的limit用來確定匹配次數(shù),當(dāng)limit<=0時,二者作用相同。
結(jié)果為:
總結(jié)
- 上一篇: 数组元素的地址计算问题(一维到高维)
- 下一篇: 15--0~n-1中缺失的数字