正則表達式我有更換字符一個String
在那裏與第三托架的子字符串可以包含這樣的在Java中使用
String str = "merSampleFactoryList[0].tfSendDate.fields[0].durationField.supported";
我要全部更換[0]
,[1]
,[2]
......與「[]
「。我知道我可以用正則表達式來做,但不知道該怎麼做。
正則表達式我有更換字符一個String
在那裏與第三托架的子字符串可以包含這樣的在Java中使用
String str = "merSampleFactoryList[0].tfSendDate.fields[0].durationField.supported";
我要全部更換[0]
,[1]
,[2]
......與「[]
「。我知道我可以用正則表達式來做,但不知道該怎麼做。
您可以使用String::replaceAll用正則表達式\[.*?\]
:
str = str.replaceAll("\\[.*?\\]", "[]")
輸出
merSampleFactoryList[].tfSendDate.fields[].durationField.supported
注意
如果您只想替換包含整數的括號,則可以使用\[\d+\]
代替。
或者像@Dukeling提意見,你可以使用\[[^]]*\]
代替\[.*?\]
'[^]] *'可能比'。*?'好。 – Dukeling
謝謝@Dukeling我可以知道這個差異對我來說是新的,但它的工作 –
@Dukeling']'是一個元字符,所以我認爲它應該被轉義:''[^ \]] *' –
你嘗試過什麼?這是一個非常簡單的實現。 – Mena