簡體   English   中英

如何使用sed從字符串中刪除0

[英]How to remove 0 from a string using sed

我有字符串“001.036.020” ,我需要將其轉換為“1.36.20” 換句話說我需要在數字前刪除所有“0”。 是否可以使用sed來做到這一點?

這個sed應該工作:

sed 's/0*\([1-9]\)/\1/g'

編輯:處理更復雜的情況,如:

  • 數字之間為0:
  • 處理只有0的段(將折疊為單個零)

在Linux上:

sed -r -e 's/(^|\.)0+([1-9])/\1\2/g' -e 's/(^|\.)(0)0*(\.|$)/\1\2\3/g'

或在Mac上:

sed -E -e 's/(^|\.)0+([1-9])/\1\2/g' -e 's/(^|\.)(0)0*(\.|$)/\1\2\3/g'
echo '001.036.020' | sed 's/^0*//'

暫無
暫無

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

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