LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: bbskill

可以用grep输出正规匹配的某一部分么?

[复制链接]
发表于 2008-8-7 16:56:08 | 显示全部楼层
grep "[a-z][a-z][a-z][0-9]*[a-z][a-z][a-z]" sql.txt|sed 's/[a-z]*//g'
回复 支持 反对

使用道具 举报

发表于 2008-8-12 23:43:59 | 显示全部楼层
顶一下,很简单的命令就可以实现, 干吗有一些非常复杂的命令呢,呵呵
Post by crazyformat;1883515
$ grep -o  "[0-9]\+" a
123
1234
131234
这样就可以了。
回复 支持 反对

使用道具 举报

发表于 2008-9-26 13:44:31 | 显示全部楼层
我的bash里grep 貌似没有-o选项
回复 支持 反对

使用道具 举报

发表于 2008-9-30 10:33:49 | 显示全部楼层
  1. grep -Po '(?<=[a-z]{3})\d+(?=[a-z]{3})' your_data_file
复制代码
回复 支持 反对

使用道具 举报

发表于 2008-10-11 11:06:22 | 显示全部楼层
  1. while read line; do expr "$line" : "[a-zA-Z]\{3\}\([0-9]\+\)[a-zA-Z]\{3\}";done < foo
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表