當前位置:
首頁 >
JAVA字符串的替换replace、replaceAll、replaceFirst的区别解析。
發布時間:2025/3/20
27
豆豆
生活随笔
收集整理的這篇文章主要介紹了
JAVA字符串的替换replace、replaceAll、replaceFirst的区别解析。
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
String str = "i.like.cat";System.out.println(str.replace(".", "!"));System.out.println(str.replaceAll(".", "!"));System.out.println(str.replaceFirst(".", "!"));
輸出結果:
為什么會出現這樣的情況?其實知道正則表達式的應該已經發現了,因為“.”是正則表達式的元字符,匹配除換行符以外的任意字符,所以replaceAll、replaceFirst才出現了這樣的結果!
而replace沒有用到正則表達式,但會把所有“.”替換掉,有很多人可能會誤解replace是替換單個,而replaceAll是替換全部,其實這是錯的。replace只是沒有用到正則表達式,但會替換所有匹配的字符串。
到這里一些不懂正則表達式的小伙伴可能就要喊坑爹了,“那我不想用正則表達式去替換第一個字符串腫么辦?”其實也很簡單,只要將元字符串轉義就行了。
s.replaceFirst("\\.", "#")輸出結果:
貼一些常用的正則表達式識別的字符列表:
.?:匹配除換行符以外的任意字符
^?:匹配字符串的開始
$?:匹配字符串的結束
*?:重復零次或更多次
+?:重復一次或更多次
??:重復零次或一次
轉載于:https://www.cnblogs.com/cat520/p/11191728.html
總結
以上是生活随笔為你收集整理的JAVA字符串的替换replace、replaceAll、replaceFirst的区别解析。的全部內容,希望文章能夠幫你解決所遇到的問題。