在Java的正則表達(dá)式中,有一些字符具有特殊含義,比如說"."、"*"等,如果要匹配這些特殊字符,需要進(jìn)行轉(zhuǎn)義處理。下面我們來比較一下轉(zhuǎn)義和不轉(zhuǎn)義的區(qū)別。
首先,我們來看一下不轉(zhuǎn)義的情況:
String regex = ".+"; String testStr = "Hello World!"; System.out.println(testStr.matches(regex));
運(yùn)行結(jié)果是true,因?yàn)?."匹配任意字符。
接著,我們來看一下轉(zhuǎn)義的情況:
String regex = "\\."; String testStr = "Hello World!"; System.out.println(testStr.matches(regex));
運(yùn)行結(jié)果是false,因?yàn)?\."只匹配"."這個特殊字符。
通過上面的例子可以看出,轉(zhuǎn)義能夠使我們實(shí)現(xiàn)精確的匹配,避免了特殊字符的影響。
上一篇java的方法和技巧