簡體   English   中英

Java Regex用於刪除分隔字符串中的所有前導零

[英]Java Regex to strip all leading zeros in a delimited String

我有字符串“08,09,10,11”,我想要“8,9,10,11”即剝去所有前導零。

正則表達式

"08,09,10,11".replaceAll("^0+(?!$)", "")

很接近,但給了'8,09,10,11'(即9上的零點沒有被剝離。

任何人都有正則表達式,我可以用來做我需要的東西?

這將有效:

str.replaceAll("^0+", "")

我認為這會奏效:

str.replaceAll("(?<!\d)0+(?=\d+)", "");

以下是一些測試: http//fiddle.re/rp57

這里提到兩種方法的不同之處:

str.replaceAll("^0+", "")

"0001000" ----> "1000"
"0000000" ----> ""


replaceAll("^0+(?!$)", "")

"0001000" ----> "1000"
"0000000" ----> "0"

(?!$)是一個所謂的負向前瞻,它會查找字符串的結尾,並且不會刪除“0”后跟字符串的結尾。 因此,如果前導零也是字符串的最后一個字符,則它不會被刪除

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM