Chinaunix

标题: 请教,如何取出每一行某一字符串后面的内容,先谢! [打印本页]

作者: a_min    时间: 2004-01-07 16:20
标题: 请教,如何取出每一行某一字符串后面的内容,先谢!
例如文本文件
111testAAA
34343testBBBB
8729testCCCC
723435testDDDD
希望得到字符串“test"后面的内容,
AAA
BBBB
CCCC
DDDD
作者: c1l2d3    时间: 2004-01-07 16:28
标题: 请教,如何取出每一行某一字符串后面的内容,先谢!
sed 's/.*test//g' yourfile
作者: Minsic    时间: 2004-01-07 16:28
标题: 请教,如何取出每一行某一字符串后面的内容,先谢!
  1. sed s'/[0-9]\{1,\}test\(.*\)/\1/' filename
复制代码

作者: Minsic    时间: 2004-01-07 16:35
标题: 请教,如何取出每一行某一字符串后面的内容,先谢!
[quote]原帖由 "c1l2d3"]sed 's/.*test//g' yourfile[/quote 发表:


汗,俺写复杂了~  

不过这位朋友这个g写着实在觉得有点碍眼...  
作者: c1l2d3    时间: 2004-01-07 16:49
标题: 请教,如何取出每一行某一字符串后面的内容,先谢!
原帖由 "Minsic" 发表:


汗,俺写复杂了~  

不过这位朋友这个g写着实在觉得有点碍眼...  


谢楼上兄提示:俺一开始不知,结果写习惯了。今后一定改之。
作者: admirer    时间: 2004-01-07 16:59
标题: 请教,如何取出每一行某一字符串后面的内容,先谢!

  1. awk -F"test" '{print $2}'  file
  2. AAA
  3. BBBB
  4. CCCC
  5. DDDD
复制代码

作者: bjgirl    时间: 2004-01-07 17:20
标题: 请教,如何取出每一行某一字符串后面的内容,先谢!
  1. sed 's/^.*test\(.*\)/\1/' urfile
复制代码

作者: CrazyStone    时间: 2004-01-07 17:33
标题: 请教,如何取出每一行某一字符串后面的内容,先谢!
这里的人真强!原来一个问题可以有这么多处理方法!admire的处理思想更让人叹服!真正的活学活用!
作者: 小鹭    时间: 2004-01-07 17:59
标题: 请教,如何取出每一行某一字符串后面的内容,先谢!
另外一种办法,不过效率低了

while ...
do
  echo ${line#*test} #截掉test前面的字符串
done
作者: bjgirl    时间: 2004-01-07 18:26
标题: 请教,如何取出每一行某一字符串后面的内容,先谢!
来个更简单的, 前题是格式固定
  1. tr -d a-z0-9 <urfile
复制代码

作者: admirer    时间: 2004-01-07 22:17
标题: 请教,如何取出每一行某一字符串后面的内容,先谢!
原帖由 "小鹭" 发表:
另外一种办法,不过效率低了

while ...
do
  echo ${line#*test} #截掉test前面的字符串
done

思路清晰,想法不错!效率也不低,批处理更适用!




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2