我得到了一個字符串x
與一個值。在那裏,我想將xx111159
的序列替換爲idno
,其中xx可以是任何內容,但必須替換。其他字符保持不變。Java - 替換特定的字符串序列
實施例:ab111159ab
如idnoab
和cd111159
爲idno
。
有沒有一種方法可以用Replace函數來完成這個工作?我知道的方式,將需要檢查的最後一個字符是111159
,但會導致讀取整個字符串逐個字符...
我得到了一個字符串x
與一個值。在那裏,我想將xx111159
的序列替換爲idno
,其中xx可以是任何內容,但必須替換。其他字符保持不變。Java - 替換特定的字符串序列
實施例:ab111159ab
如idnoab
和cd111159
爲idno
。
有沒有一種方法可以用Replace函數來完成這個工作?我知道的方式,將需要檢查的最後一個字符是111159
,但會導致讀取整個字符串逐個字符...
用正則表達式和String.replaceAll()
可以完成你的目標:
String result = x.replaceAll(".{2}111159", "idno");
其中.
與任何字符匹配且{2}
確保在111159
之前有兩個字符。
加1,因爲你解釋了表達式。 – DevilsHnd
使用正則表達式和替換
str = str.replaceAll(".{2}111159","idno")
使用正則表達式:
x = x.replaceAll(".{2}111159", "idno");
這是安全的假設字符串將始終以'xx111159'開始?如果字符串只包含「111159」,那麼你會期望什麼?即,它以111159開始,在序列前沒有任何字符? – Trying