簡體   English   中英

Java正則表達式使用空格去除前導和尾隨零

[英]Java Regex to Strip Leading & Trailing Zeros with Spaces

如下所示的整數字符串,在Java中如何去除前導零和尾隨零,並使它看起來像:

  • 0 0 1 2 3變為1 2 3
  • 0 -2 4 0 0 0變為-2 4
  • 0 3 0 -4 0 0變為3 0 -4
  • 0 10 9 0 0 20 0變為10 9 0 0 20

據我所知,此正則表達式可以滿足您的要求。

string pattern = "^[ 0]*|( |(?<!\d)0)*$";
str.replaceAll(pattern, "");

解釋:表達式分為兩部分,由第一|分隔| 第一部分^[ 0]*只是在行/字符串的開頭查找0個或多個空格或零( ^表示行/字符串的開頭)。

第二部分( |(?<!\\d)0)*$有點復雜,因為特殊情況下,行中的最后一個非零數字以數字零結尾。 這部分將查找零個或多個出現的空格或(?<!\\d)0 ,這表示零之前沒有數字 ?<!\\d部分稱為負向后看 最后是$ ,它表示行/字符串的結尾。

暫無
暫無

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

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