- 主题:问一个sed的初级问题
echo "abc 123"| sed 's/[0-9]*/& &/'
显示
abc 123
为啥abc前面会多一个空格
我的理解是a匹配到了0个数字,&就是a了
应当用a a代替a
应该显示
a abc 123
初学者,不得要领,求解惑
--
FROM 183.15.88.*
看起来第一个&被忽略了,(或者只允许一个), “abc 123" 整个字符串匹配 [0-9]*, 所以就有空格了
--
FROM 111.196.160.*
不对啊
echo "abc 123"| sed 's/[0-9]*/(&) (&)/'
输出
() ()abc 123
【 在 map2016 (map2016) 的大作中提到: 】
: 看起来第一个&被忽略了,(或者只允许一个), “abc 123" 整个字符串匹配 [0-9]*, 所以就有空格了
--
FROM 1.119.140.*
没有匹配到任何数字,&怎么会是a。。。
&表示匹配到的东西,没有匹配到就是空。
你要匹配a得这么写:
echo "abc 123"| sed 's/a[0-9]*/& &/'
【 在 TimeAndRiver (时间与河流) 的大作中提到: 】
: echo "abc 123"| sed 's/[0-9]*/& &/'
: 显示
: abc 123
: ...................
--
FROM 123.59.170.*
我不是问正确写法
我是问这个答案为啥会多一个空格
【 在 world @ [LinuxDev] 的大作中提到: 】
:
: 没有匹配到任何数字,&怎么会是a。。。
: &表示匹配到的东西,没有匹配到就是空。
: 你要匹配a得这么写:
: echo "abc 123"| sed 's/a[0-9]*/& &/'
#发自zSMTH@16s Pro
--
FROM 113.87.162.*
你替换的啊。。。
“& &” 中间有一个空格啊。。。。。。
【 在 TimeAndRiver (时间与河流) 的大作中提到: 】
: 我不是问正确写法
: 我是问这个答案为啥会多一个空格
: #发自zSMTH@16s Pro
: ...................
--
FROM 123.59.170.*
&这个时候是啥啊
【 在 world 的大作中提到: 】
:
: 你替换的啊。。。
: “& &” 中间有一个空格啊。。。。。。
:
: 【 在 TimeAndRiver (时间与河流) 的大作中提到: 】
#发自zSMTH@16s Pro
--
FROM 113.87.162.*
是空的,所以就只替换了空格。
【 在 TimeAndRiver (时间与河流) 的大作中提到: 】
: &这个时候是啥啊
: #发自zSMTH@16s Pro
--
FROM 123.59.170.*
为啥不是a
【 在 world @ [LinuxDev] 的大作中提到: 】
:
: 是空的,所以就只替换了空格。
: 【 在 TimeAndRiver (时间与河流) 的大作中提到: 】
: : &这个时候是啥啊
: : #发自zSMTH@16s Pro
#发自zSMTH@16s Pro
--
FROM 113.87.162.*
什么都没匹配到,为啥会是a?
它实际上匹配到的是a前面的“空隙”
【 在 TimeAndRiver (时间与河流) 的大作中提到: 】
: 为啥不是a
: #发自zSMTH@16s Pro
--
FROM 123.59.170.*