[abc] a、b 或 c(簡單類)
[^abc] 任何字元,除了 a、b 或 c(否定)
[a-za-z] a 到 z 或 a 到 z,兩頭的字母包括在內(範圍)
[a-d[m-p]] a 到 d 或 m 到 p:[a-dm-p](並集)
[a-z&&[def]] d、e 或 f(交集)
[a-z&&[^bc]] a 到 z,除了 b 和 c:[ad-z](減去)
[a-z&&[^m-p]] a 到 z,而非 m 到 p:[a-lq-z](減去)
. 任何字元(與行結束符可能匹配也可能不匹配)
\d 數字:[0-9]
\d 非數字: [^0-9]
\s 空白字元:[ \t\n\x0b\f\r]
\s 非空白字元:[^\s]
\w 單詞字元:[a-za-z_0-9]
\w 非單詞字元:[^\w]
x? x,一次或一次也沒有
x* x,零次或多次
x+ x,一次或多次
x x,恰好 n 次
x x,至少 n 次
x x,至少 n 次,但是不超過 m 次
xy x 後跟 y
x|y x 或 y
public
static
void
main
(string[
] args)";
scanner input=
newscanner
(system.in)
; system.out.
println
("請輸入乙個手機號:");
string phone=input.
next()
;if(phone.
matches
(reg1)
)else
}
public
static
void
main
(string[
] args)
[x|0-9]"
; scanner input=
newscanner
(system.in)
; system.out.
println
("請輸入乙個身份證號號:");
string cardid=input.
next()
;if(cardid.
matches
(reg1)
)else
}
compile(string regex) 將給定的正規表示式編譯到模式中(將正規表示式放在pattern物件中)。
matcher(charsequence input)建立匹配給定輸入與此模式的匹配器。
matches();將字串與正規表示式進行全部匹配
find(); 區域性匹配,在字串中找到與正規表示式符合一部分,有符合部分就返回true,接著遍歷。
group();返回由find()獲得區域性匹配子字串。
public
static
void
main
(string[
] args)
";// system.out.println("請輸入乙個手機號:");
// string phone=input.next();
// if (phone.matches(reg1)) else
/*第二種:用正規表示式物件和匹配器物件實現*/
//建立乙個正規表示式物件
pattern p1=pattern.
compile
("1[3-9]\\d");
system.out.
println
("請輸入乙個手機號:");
string phone=input.
next()
;//獲得匹配器物件
matcher m=p1.
matcher
(phone)
;//用匹配器物件呼叫方法將正規表示式與字串全域性匹配
if(m.
matches()
)else
}
/**
* 正則的使用,遮蔽手機號中間5位
*/public
class
test3")
;//用正則物件建立匹配器物件,將要匹配的字串放在匹配器中
matcher m=p1.
matcher
(word)
;//用匹配器物件呼叫區域性匹配方法
while
(m.find()
) system.out.
println
("遮蔽後為:"
+word);}
}
正則學習筆記
最近做東西頻繁的用到正則這一塊,所以自己又翻了翻以前的筆記和檢視了正則三十分鐘入門教程。重新整理了筆記,希望在以後的學習過程中便於查閱 注 以下例子非本人原創 什麼是正規表示式 在編寫處理字串的程式或網頁時,經常會有查詢符合某些複雜規則的字串的需要。正規表示式就是用於描述這些規則的工具。換句話說,正...
正則學習筆記
文星家 即 01次 0多次 1多次 匹配起始端 匹配結尾處 匹配任意單個字元,但換行符除外 x 匹配x並記住x,前提是匹配 x 匹配x但不記住x x y 匹配x,僅當後面緊跟著y時。如果符合匹配,則只有x會被記住,y不會被記住。x y 匹配x,僅當後面不緊跟著y時。如果符合匹配,則只有x會被記住,y...
正則學習筆記
字元匹配 區間範圍框 列舉值 a z0 9a z 分枝條件或 特殊轉義符 取消轉義 w a za z0 9 r n 換行符匹配 u4e00 u9fa5 漢字 s s 任意字元 懶惰匹配 若發現匹配立即返回,懶惰搜尋 例 a.b exec abcdedfb abcdedfb a.b exec abcd...