+ -
当前位置:首页 → 问答吧 → 求助文本取值

求助文本取值

时间:2011-01-30

来源:互联网

#############

2
1

3

3
2


4
3

8

3
2

3
2

2
1
#####################
上面为原始文本,现在我想对空行之间的数值做需求,
如果两个空行间的数字行相减为0,记录个数为1个,如果相减不为0,那么不记录个数。
如果两个空行间的数字行为1行,那么记录个数为1个
求解
祝大家新年快乐~~~

作者: 拖拉机商人   发布时间: 2011-01-30

求上面文本中符合条件的个数

作者: 拖拉机商人   发布时间: 2011-01-30

以顶楼的数据为例,你希望得到的结果是什么?

作者: Shell_HAT   发布时间: 2011-01-30

希望得到的数值:1

作者: 拖拉机商人   发布时间: 2011-01-30

回复 拖拉机商人


    按照你第二个条件,不应该是记录数为2么?

作者: yinyuemi   发布时间: 2011-01-30

对,应该是2,看花了

作者: 拖拉机商人   发布时间: 2011-01-30



QUOTE:
以顶楼的数据为例,你希望得到的结果是什么?
Shell_HAT 发表于 2011-01-30 14:23




    希望得到的结果:2

作者: 拖拉机商人   发布时间: 2011-01-30

回复 拖拉机商人

试试这个:
    awk '/./{x=getline;{if(length(x)==0){label=label+1}else{$0-x==0?label++:label=label}}}NF==0{x=""} END{print label}'

作者: yinyuemi   发布时间: 2011-01-30



QUOTE:
回复  拖拉机商人

试试这个:
    awk '/./{x=getline;{if(length(x)==0){label=label+1}else{$0-x==0 ...
yinyuemi 发表于 2011-01-30 14:54




    不行的,如果修改下内容,加一个单行的,结果就不对了

作者: 拖拉机商人   发布时间: 2011-01-30