免费注册 查看新帖 |

Chinaunix

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

[文本处理] 两列数据不匹配的删除 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-10-03 18:01 |只看该作者 |倒序浏览

  B,C的数据是对应的,不能动,A,B匹配则不更改,
如 1=1则跳过
3不等于4,则把4 z 都删掉,再把3  0 匹配上来

A   B   C
1   1    x
2   2    y
3   4    z
5    3   o

论坛徽章:
0
2 [报告]
发表于 2012-10-03 23:54 |只看该作者
  1. awk 'NR==1{print;next}{a[$1]=$1;b[$2]=$2"    "$3}END{for(i in a)if(a[i]=b[i])print i"   "b[i];else print $1|"sort"}' file
  2. A   B    C
  3. 1   1    x
  4. 2   2    y
  5. 3   3    o
  6. 5
复制代码

论坛徽章:
3
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:51:162015年亚洲杯之阿曼
日期:2015-04-07 20:00:59
3 [报告]
发表于 2012-10-04 12:21 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
4 [报告]
发表于 2012-10-04 12:25 |只看该作者
回复 3# zooyo

版主,好久不见!
我只是猜一猜!
   

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
5 [报告]
发表于 2012-10-07 22:15 |只看该作者
需求提的不明确啊。只是给了一行~~

论坛徽章:
0
6 [报告]
发表于 2012-10-08 13:40 |只看该作者
本帖最后由 menulst 于 2012-10-08 13:51 编辑
kk5234 发表于 2012-10-03 23:54
  1. if(a[i]=b[i])
复制代码
这句是什么意思?

自己研究了下:
这个例子里面,遍历到i=5的时候,b[5]没有值,那么赋值操作a[5]=b[5] 执行后,if的条件就是空(false),这样条件不成立,后面print就不会打印了.  if(a=b) 这一句挺精妙的. 受教了.

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
7 [报告]
发表于 2012-10-08 13:59 |只看该作者
回复 6# menulst


    直接判断两个值是否相等不行吗?

论坛徽章:
0
8 [报告]
发表于 2012-10-08 14:44 |只看该作者
回复 7# Shell_HAT

不行,a和b这两个两个数组里面存的值很明显,本来就不相等啊.

if(a=b) 实际是判断赋值操作之后a的值. b[5]是空,赋值之后a[5]也是空,就是false了.

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
9 [报告]
发表于 2012-10-08 15:02 |只看该作者
回复 8# menulst


    是的。刚才没仔细看

论坛徽章:
0
10 [报告]
发表于 2012-10-08 15:13 |只看该作者
为什么字体莫名其妙变成斜体了?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP