我有字符串「08,09,10,11」,我想要「8,9,10,11」,即去掉所有前導零。Java正則表達式去除分隔字符串中的所有前導零。
正則表達式
"08,09,10,11".replaceAll("^0+(?!$)", "")
是接近,但給了我「8,09,10,11」(即在9零,不會被剝離。
任何人都得到一個正則表達式我可以用它來做我需要
我有字符串「08,09,10,11」,我想要「8,9,10,11」,即去掉所有前導零。Java正則表達式去除分隔字符串中的所有前導零。
正則表達式
"08,09,10,11".replaceAll("^0+(?!$)", "")
是接近,但給了我「8,09,10,11」(即在9零,不會被剝離。
任何人都得到一個正則表達式我可以用它來做我需要
這將工作:方法
str.replaceAll("^0+", "")
在這裏,不同的兩個之間提及:(?!$)
str.replaceAll("^0+", "")
"0001000" ----> "1000"
"0000000" ----> ""
replaceAll("^0+(?!$)", "")
"0001000" ----> "1000"
"0000000" ----> "0"
是所謂的負先行尋找出結束字符串,並且不要刪除字符串尾部的「0」。因此,如果一個前導零也是該字符串的最後一個字符,它不會被刪除
在發佈前想想...... –
@LukasKnuth這實際上是一個5秒的修復。 – Michael
太棒了,謝謝! – user1930999