分页: 1 / 1
sed的正则替换问题
发表于 : 2012-03-11 14:48
由 guaicai
目的是删除所有的 [ 符号跟 ] ,如下结果,何解?
$ cat t
[
]
[123]
sdfsdf
[sdfsdf
sdfsdf]
[]
$ cat t | sed 's/(\[|\])?//g'
[
]
[123]
sdfsdf
[sdfsdf
sdfsdf]
[]
Re: sed的正则替换问题
发表于 : 2012-03-11 15:04
由 wutong
vim 中我知道这样做:
:%s/[\[\]]//gc
Re: sed的正则替换问题
发表于 : 2012-03-11 15:08
由 wutong
代码: 全选
cat t | sed 's/\[\|\]//g'
Re: sed的正则替换问题
发表于 : 2012-03-11 15:15
由 guaicai
wutong 写了:代码: 全选
cat t | sed 's/\[\|\]//g'
为什么sed这么多符号要转义呢?
看来是正则不太一样阿
Re: sed的正则替换问题
发表于 : 2012-03-11 15:26
由 Jr.z
或者:
代码: 全选
sed -e 's/\[//g' -e 's/\]//g' filename
或者:
代码: 全选
sed 's/\W//g' filename
Re: sed的正则替换问题
发表于 : 2012-03-11 15:27
由 Jr.z
guaicai 写了:wutong 写了:代码: 全选
cat t | sed 's/\[\|\]//g'
为什么sed这么多符号要转义呢?
看来是正则不太一样阿
其实不多 ,也就十几个吧
Re: sed的正则替换问题
发表于 : 2012-03-11 19:13
由 fnan
sed 's/\(\[\|\]\)//g' t
sed -r 's/\[|\]//g' t
Re: sed的正则替换问题
发表于 : 2012-03-12 11:22
由 Think1st
guaicai 写了:目的是删除所有的 [ 符号跟 ] ,如下结果,何解?
$ cat t
[
]
[123]
sdfsdf
[sdfsdf
sdfsdf]
[]
$ cat t | sed 's/(\[|\])?//g'
[
]
[123]
sdfsdf
[sdfsdf
sdfsdf]
[]
代码: 全选
sed -e 's/\]//g;s/\[//g' tfile
Re: sed的正则替换问题
发表于 : 2012-03-13 12:34
由 josephyoung