使用sed在数字和文本之间添加空格

时间:2017-05-19 18:47:50

标签: sed

我想使用sed命令在数字和文本之间添加空格:16a将是16 a,89jas将是89 jas。

请让我知道答案

感谢

2 个答案:

答案 0 :(得分: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将返回第一个 第二个被捕集团

答案 1 :(得分:0)

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

或使用-E调用支持ERE的sed,例如GNU sed和OSX sed:

sed -E 's/[0-9]+/& /g'