免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3654 | 回复: 8
打印 上一主题 下一主题

[文本处理] 保存匹配的字符 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-07-31 11:42 |显示全部楼层 |倒序浏览
本帖最后由 cxrfly 于 2014-07-31 13:17 编辑

有几行字符串,类似下面2行:
1.1e-05 25.9 3.1 1.1e-05 25.9 2.1 2.0 1 jgi|Physo3|339296|gm1.18871_g
4.7e-05 23.8 0.0 7.4e-05 23.2 0.0 1.4 1 jgi|Physo3|352393|estExt_fgenesh1_pm.C_80246

我想用sed模式匹配抽取jgi及其之后的那段字符串并保存,其余前面部分不要。请问命令行如何操作?
写了几次都不对阿。求指点

谢谢Shell_HAT版主,

总结下,命令为grep -o "jgi.*" a.txt > b.txt, 或者sed 's/.*jgi/jgi/' a.txt > b.txt,都可以!而2楼朋友的这个,不知在我的fedora 20上为啥不行,但是版主测试了可以。

论坛徽章:
0
2 [报告]
发表于 2014-07-31 12:21 |显示全部楼层
回复 2# ly5066113


    你这个不对,.*可以匹配非回车符的一切字符,那怎么能查找到jgi开始的那串字符呢?

论坛徽章:
0
3 [报告]
发表于 2014-07-31 12:58 |显示全部楼层
回复 6# lifayi2008


    事实是不对的阿,你仔细看看正则表达式,你写的不对呢

论坛徽章:
0
4 [报告]
发表于 2014-07-31 13:00 |显示全部楼层
回复 5# Shell_HAT


    谢谢!你这个可以,解决了我的问题

论坛徽章:
0
5 [报告]
发表于 2014-07-31 13:13 |显示全部楼层
回复 9# Shell_HAT


    我用了sed 's/.*/ /' a.txt > b.txt,最后打开b.txt是空的。我也不知是怎么回事。我是fedora 20,与这有关系马?

论坛徽章:
0
6 [报告]
发表于 2014-07-31 13:19 |显示全部楼层
回复 11# 十万个菜鸟


    thanks,您的也可以!

论坛徽章:
0
7 [报告]
发表于 2014-07-31 13:48 |显示全部楼层
回复 14# Shell_HAT


    测试了,不行的。您能否详细解释下2楼的这个命令?我是这样写的sed 's/.* //' a.txt > b.txt。是不是我本身的文件a格式有问题?

论坛徽章:
0
8 [报告]
发表于 2014-07-31 15:51 |显示全部楼层
回复 17# Shell_HAT


    不知为啥上传的文件格式选项没有支持的类型,所以上传不了,改成压缩的可以。 Psojae.tar.gz (2.41 KB, 下载次数: 2)

论坛徽章:
0
9 [报告]
发表于 2014-07-31 17:07 |显示全部楼层
回复 22# Shell_HAT


    谢谢版主,我回头再试试。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP