Board logo

标题: sed如何替换指定字符之前的指定字符? [打印本页]

作者: Hello123World    时间: 2012-8-8 15:06     标题: sed如何替换指定字符之前的指定字符?

标题有点拗口,但是意思是这个意思。

例如有如下文本1.txt:
  1. helloworld
  2. world
  3. good kitty
  4. good
复制代码


我想将hello之后的world替换成kitty,将kitty之前的good替换成hello,也就是说都是有条件的替换。

hello之后的world替换成kitty:sed '/hello/ s/world/kitty/g' 1.txt

kitty之前的good替换成hello:请问这个怎么写?
作者: forfiles    时间: 2012-8-8 17:34

sed '/hello/ s/world/kitty/g' 1.txt
你这个不对吧
如果如果有一行:
worldhello
会被错误的替换掉
作者: forfiles    时间: 2012-8-8 17:37

  1. sed.exe "s/\(hello.*\)world/\1kitty/g" a.txt
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2