正則表示式(一)
阿新 • • 發佈:2018-12-12
1. 常用符號
- “^” 是正則表示式匹配字串開始位置
- “$” 是正則表示式匹配字串結束位置
- “.” 能夠表示任意字元的萬用字元
- “*” 閉包,將模式和自身連線任意多次(包括零次)
例: AB* 一個A和0個或多個B字串組成
- “.*” 匹配所有字串
2. # (.*)和(.*?) #
- 當正則表示式中包含重複量詞(如:*,?,+)時,通常的行為是匹配儘可能多的字元,比如:a(.*)b去匹配aabab字串,它會 匹配整個字串,這被稱為貪婪匹配。
- 有的時候我們需要懶惰匹配,也就是匹配儘可能少的字元,在量詞後邊加一個問號?, 比如(.*?)在能使整個匹配成功的前提下使用最少的重複。
3.正則表示式的() [] {} 有著不同的意思
- () 是為了提取匹配字串的,表示式中有幾個()就有幾個相應的匹配字串
- [] 表示一個集合 例:[0-9] 0~9 其中任意一個數
- {} 用寫在“{}”裡的數或者範圍來指定重複的次數 例: [0-9]{4} 指4位數
4.$1,$2是表示的小括號裡的內容 $1是第一個小括號裡的 ,$2是第2個小括號裡的。 例: replaceAll("[0-9]{4}(.*)[0-9]{2}(.*)",yearNow+"$1"+monthNow+"$2"))。