免费注册 查看新帖 |

Chinaunix

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

[文本处理] 文本处理,6个数有一个大于577则输出 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-08-15 15:18 |只看该作者 |倒序浏览
本帖最后由 blueghost_mt 于 2013-08-15 15:25 编辑

RELEASE PET INFO[UserId=54 PetId=23 Name=怪物1 P1= P2= Lv=1 Gen=1 Gender=1 Char=3 Flash=0 IV=5 14 32 1 8 28 EV=889 0 0 0 609 0 Height=218 Weight=752 Frd=0 Spell=39 66 96 91 Feature=0 0 Exp=0 Birth=1369020924 BodySize=109 OtherSpell=0 0 0 0 SpellStatus=0 0 0 0BeObjId=15 BePetId=23 ExpAdd=0 ]
RELEASE PET INFO[UserId=54 PetId=23 Name=怪物21 P1= P2= Lv=1 Gen=1 Gender=1 Char=3 Flash=0 IV=5 14 32 1 8 28 EV=0 0 0 0 0 0 Height=218 Weight=752 Frd=0 Spell=39 66 96 91 Feature=0 0 Exp=0 Birth=1369020924 BodySize=109 OtherSpell=0 0 0 0 SpellStatus=0 0 0 0BeObjId=15 BePetId=23 ExpAdd=0 ]
RELEASE PET INFO[UserId=54 PetId=23 Name=怪物132 P1= P2= Lv=1 Gen=1 Gender=1 Char=3 Flash=0 IV=5 14 32 1 8 28 EV=0 0 32 0 0 0 Height=218 Weight=752 Frd=0 Spell=39 66 96 91 Feature=0 0 Exp=0 Birth=1369020924 BodySize=109 OtherSpell=0 0 0 0 SpellStatus=0 0 0 0BeObjId=15 BePetId=23 ExpAdd=0 ]
RELEASE PET INFO[UserId=54 PetId=23 Name=怪物21 P1= P2= Lv=1 Gen=1 Gender=1 Char=3 Flash=0 IV=5 14 32 1 8 28 EV=0 0 0 0 77 0 Height=218 Weight=752 Frd=0 Spell=39 66 96 91 Feature=0 0 Exp=0 Birth=1369020924 BodySize=109 OtherSpell=0 0 0 0 SpellStatus=0 0 0 0BeObjId=15 BePetId=23 ExpAdd=0 ]
RELEASE PET INFO[UserId=54 PetId=23 Name=怪物98 P1= P2= Lv=1 Gen=1 Gender=1 Char=3 Flash=0 IV=5 14 32 1 8 28 EV=0 578 0 0 33 0 Height=218 Weight=752 Frd=0 Spell=39 66 96 91 Feature=0 0 Exp=0 Birth=1369020924 BodySize=109 OtherSpell=0 0 0 0 SpellStatus=0 0 0 0BeObjId=15 BePetId=23 ExpAdd=0 ]

这样的一堆数据,如果我要提取出EV后面的6个数字里任何一个数字有大于577的行改如何处理?
期望结果提取出来的
RELEASE PET INFO[UserId=54 PetId=23 Name=怪物1 P1= P2= Lv=1 Gen=1 Gender=1 Char=3 Flash=0 IV=5 14 32 1 8 28 EV=889 0 0 0 609 0 Height=218 Weight=752 Frd=0 Spell=39 66 96 91 Feature=0 0 Exp=0 Birth=1369020924 BodySize=109 OtherSpell=0 0 0 0 SpellStatus=0 0 0 0BeObjId=15 BePetId=23 ExpAdd=0 ]
RELEASE PET INFO[UserId=54 PetId=23 Name=怪物98  P1= P2= Lv=1 Gen=1 Gender=1 Char=3 Flash=0 IV=5 14 32 1 8 28 EV=0 578 0 0 33 0 Height=218 Weight=752 Frd=0 Spell=39 66 96 91 Feature=0 0 Exp=0 Birth=1369020924 BodySize=109 OtherSpell=0 0 0 0 SpellStatus=0 0 0 0BeObjId=15 BePetId=23 ExpAdd=0 ]
在此先行谢过各位大神了!

论坛徽章:
2
射手座
日期:2014-10-10 15:59:4715-16赛季CBA联赛之上海
日期:2016-03-03 10:27:14
2 [报告]
发表于 2013-08-15 15:35 |只看该作者
回复 1# blueghost_mt
  1. awk -F'(EV=| Height)' '{for(i=1;i<=split($2,b," ");i++)if(b[i]>577){print;break}}'
复制代码

论坛徽章:
145
技术图书徽章
日期:2013-10-01 15:32:13戌狗
日期:2013-10-25 13:31:35金牛座
日期:2013-11-04 16:22:07子鼠
日期:2013-11-18 18:48:57白羊座
日期:2013-11-29 10:09:11狮子座
日期:2013-12-12 09:57:42白羊座
日期:2013-12-24 16:24:46辰龙
日期:2014-01-08 15:26:12技术图书徽章
日期:2014-01-17 13:24:40巳蛇
日期:2014-02-18 14:32:59未羊
日期:2014-02-20 14:12:13白羊座
日期:2014-02-26 12:06:59
3 [报告]
发表于 2013-08-15 15:36 |只看该作者
回复 1# blueghost_mt

Here you are

# awk -F"[ =]" '{for(n=0;n++<NF;)if($n~/^EV$/){for(c=0;c++<6;){t=n+c;if($t>577){print;next}}next}}' FILE
RELEASE PET INFO[UserId=54 PetId=23 Name=美美蛇 P1= P2= Lv=1 Gen=1 Gender=1 Char=3 Flash=0 IV=5 14 32 1 8 28 EV=889 0 0 0 609 0 Height=218 Weight=752 Frd=0 Spell=39 66 96 91 Feature=0 0 Exp=0 Birth=1369020924 BodySize=109 OtherSpell=0 0 0 0 SpellStatus=0 0 0 0BeObjId=15 BePetId=23 ExpAdd=0 ]
RELEASE PET INFO[UserId=54 PetId=23 Name=美美蛇 P1= P2= Lv=1 Gen=1 Gender=1 Char=3 Flash=0 IV=5 14 32 1 8 28 EV=0 578 0 0 33 0 Height=218 Weight=752 Frd=0 Spell=39 66 96 91 Feature=0 0 Exp=0 Birth=1369020924 BodySize=109 OtherSpell=0 0 0 0 SpellStatus=0 0 0 0BeObjId=15 BePetId=23 ExpAdd=0 ]

论坛徽章:
0
4 [报告]
发表于 2013-08-15 15:49 |只看该作者
回复 3# jason680


    谢谢,能稍微讲下if($n~/^EV$/)是什么含义么?

论坛徽章:
39
辰龙
日期:2013-08-21 15:45:192015亚冠之广州富力
日期:2015-05-12 16:34:52亥猪
日期:2015-03-03 17:22:00申猴
日期:2015-03-03 17:21:37未羊
日期:2014-10-10 13:45:41戌狗
日期:2014-06-17 09:53:29巨蟹座
日期:2014-06-12 23:17:17双鱼座
日期:2014-06-10 12:42:44寅虎
日期:2014-06-09 12:52:172015亚冠之卡尔希纳萨夫
日期:2015-05-24 15:24:35黄金圣斗士
日期:2015-12-02 17:25:0815-16赛季CBA联赛之吉林
日期:2017-06-24 16:43:52
5 [报告]
发表于 2013-08-15 15:59 |只看该作者
回复 4# blueghost_mt

   判断 $n 的值是否等于 “EV”
   

论坛徽章:
0
6 [报告]
发表于 2013-08-15 16:27 |只看该作者
回复 5# 关阴月飞


    哦~懂了~再问下,-F应该是指定分隔符吧"[ =]"代表什么含义?匹配等号之前的?

论坛徽章:
39
辰龙
日期:2013-08-21 15:45:192015亚冠之广州富力
日期:2015-05-12 16:34:52亥猪
日期:2015-03-03 17:22:00申猴
日期:2015-03-03 17:21:37未羊
日期:2014-10-10 13:45:41戌狗
日期:2014-06-17 09:53:29巨蟹座
日期:2014-06-12 23:17:17双鱼座
日期:2014-06-10 12:42:44寅虎
日期:2014-06-09 12:52:172015亚冠之卡尔希纳萨夫
日期:2015-05-24 15:24:35黄金圣斗士
日期:2015-12-02 17:25:0815-16赛季CBA联赛之吉林
日期:2017-06-24 16:43:52
7 [报告]
发表于 2013-08-15 16:31 |只看该作者
回复 6# blueghost_mt


     -F "[ =]"    以 “空格” 或 “=” 为分隔符

论坛徽章:
0
8 [报告]
发表于 2013-08-15 16:36 |只看该作者
回复 7# 关阴月飞


    多谢了~~~明白了~

论坛徽章:
145
技术图书徽章
日期:2013-10-01 15:32:13戌狗
日期:2013-10-25 13:31:35金牛座
日期:2013-11-04 16:22:07子鼠
日期:2013-11-18 18:48:57白羊座
日期:2013-11-29 10:09:11狮子座
日期:2013-12-12 09:57:42白羊座
日期:2013-12-24 16:24:46辰龙
日期:2014-01-08 15:26:12技术图书徽章
日期:2014-01-17 13:24:40巳蛇
日期:2014-02-18 14:32:59未羊
日期:2014-02-20 14:12:13白羊座
日期:2014-02-26 12:06:59
9 [报告]
发表于 2013-08-15 16:41 |只看该作者
本帖最后由 jason680 于 2013-08-15 16:53 编辑

回复 6# blueghost_mt


IV=5 14 32 1 8 28 EV=889 0 0 0 609 0 Height=218

split key will be = (equal) or (white space)

and awk command will be

awk -F"[ =]" ...

the [ =] to tell awk to split the string by (white space) or = (equal) sign

论坛徽章:
0
10 [报告]
发表于 2013-08-15 17:24 |只看该作者
回复 9# jason680


    虽然已经理解了,但还是谢谢你解释的那么清楚,感谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP