2017-05-19 54 views

回答

2

這裏是想想一個簡單的方法:

echo "1abc2abcd3efghi10z11jkl100pqrs" | \ 
sed -r 's/([0-9])([a-zA-Z])/\1 \2/g; s/([a-zA-Z])([0-9])/\1 \2/g' 
  • 添加一個數字字母串&信紙之間的空白數字字符串
  • ()是捕獲組和\1\2是返回所述第一和第二 捕獲組
+2

非常好。爲了保護unicode,''[0-9]'和'[a-zA-Z]'應該用'[[:digit:]]'和'[[:alpha:]]'代替。 – John1024

0
sed 's/[0-9][0-9]*/& /g' 

或與一個sed支持ERES當與-E調用,例如GNU sed和OSX sed:

sed -E 's/[0-9]+/& /g' 
相關問題