使用sed修改输入字符串

使用sed修改输入字符串,sed,Sed,使用sed,如何将输入字符串(如9872更改为39 38 37 32),即在输入字符串的每个数字之前插入数字3,在每个数字之后插入空格9872. 输入字符串: 9872 所需输出: 39 38 37 32 为了完整起见,使用正则表达式引用是一种更通用的方法 echo 9872 | sed -r 's/([[:digit:]])/3\1 /g' 这是相当琐碎的,你试过什么?你被困在哪里了?你有很好的答案。如果“3”不是固定的,您可以写:n=3;sed“s/[0-9]/$n&/g”为了安

使用sed,如何将输入字符串(如
9872
更改为
39 38 37 32
),即在输入字符串的每个数字之前插入数字3,在每个数字之后插入空格
9872.

输入字符串:

9872   
所需输出:

39 38 37 32

为了完整起见,使用正则表达式引用是一种更通用的方法

echo 9872 | sed -r 's/([[:digit:]])/3\1 /g'

这是相当琐碎的,你试过什么?你被困在哪里了?你有很好的答案。如果“3”不是固定的,您可以写:
n=3;sed“s/[0-9]/$n&/g”为了安全起见,我会使用
echo 9872 | sed“s/[0-9]/3&/g'
,否则它可能会使用虚假的空格和EOL。此外,我认为空间不需要转义。可能不会伤害任何东西,不过。。。
echo 9872 | sed -r 's/([[:digit:]])/3\1 /g'
$ echo "9872" | sed 's/[0-9]/3& /g' 
39 38 37 32