sed问题插入冒号

sed问题插入冒号,sed,Sed,您好,我想使用sed搜索一个文件,搜索3-5个字母字符和3个数字,并在第一个字母字符后插入冒号,在数字前插入冒号,使用Ubuntu 10.04.2 LTS上的GNU sed: sed -r -e 's/([a-zA-Z]{3,5})([0-9]{3})/\1:\2/g' 编辑:误读了OP的问题。更好的答案是: sed -r -e 's/([a-zA-Z])([a-zA-Z]{2,4})([0-9]{3})/\1:\2:\3/g' 如果您希望字符串abcdef123或abcde1234失败,您

您好,我想使用sed搜索一个文件,搜索3-5个字母字符和3个数字,并在第一个字母字符后插入冒号,在数字前插入冒号,使用Ubuntu 10.04.2 LTS上的GNU sed:

sed -r -e 's/([a-zA-Z]{3,5})([0-9]{3})/\1:\2/g'
编辑:误读了OP的问题。更好的答案是:

sed -r -e 's/([a-zA-Z])([a-zA-Z]{2,4})([0-9]{3})/\1:\2:\3/g'

如果您希望字符串
abcdef123
abcde1234
失败,您可能需要修改正则表达式以包括单词边界,如:
sed-r的/(\)/\1:\2:\3/g