免费注册 查看新帖 |

Chinaunix

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

在awk中怎么实现根据某个域的匹配进行操作? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-03-01 17:52 |只看该作者 |倒序浏览
代码:
awk '{
     if ( $4 ~ / *\.* / ){
       print $1"\t"$2"\t"$4 >> "dktmp"
     }else {
       print $1"\t"$2"\t"$3 >>"hktmp"
       }
       }' ${file}
}
我想根据文件的第四个域是否匹配*.*来决定后面的操作,但是始终不起作用,请问我错在什么地方?

论坛徽章:
0
2 [报告]
发表于 2004-03-01 18:16 |只看该作者

在awk中怎么实现根据某个域的匹配进行操作?

把文本贴出来看看先

论坛徽章:
0
3 [报告]
发表于 2004-03-01 18:45 |只看该作者

在awk中怎么实现根据某个域的匹配进行操作?

原帖由 "zd4281" 发表:
代码:
awk '{
     if ( $4 ~ / *\.* / ){
       print $1"\t"$2"\t"$4 >> "dktmp"
     }else {
       print $1"\t"$2"\t"$3 >>"hktmp"
       }
       }' ${file}
}
我想根据文件的第四?.........

1、最后多一个“}”?
2、文件各个字段以什么分隔?

论坛徽章:
0
4 [报告]
发表于 2004-03-01 21:40 |只看该作者

在awk中怎么实现根据某个域的匹配进行操作?

怎么发现BJgirl口气变成了GDgirl了?

言规正传,
匹配*.*时,应该这样表示吧:
\*\.\*
*也要加\来转义的,
楼主试试,别忘了告知结果啊?

别扔我烂苹果啊,啊,啊。

论坛徽章:
0
5 [报告]
发表于 2004-03-01 22:12 |只看该作者

在awk中怎么实现根据某个域的匹配进行操作?

原帖由 "john_student" 发表:
怎么发现BJgirl口气变成了GDgirl了?

言规正传,
匹配*.*时,应该这样表示吧:
\*\.\*
*也要加\来转义的,
楼主试试,别忘了告知结果啊?

别扔我烂苹果啊,啊,啊。
GD?广东?广岛?
言归正转:
awk [指定输入域分隔] '/模式/{操作行为}',当然啦,这个不过是一个套路而已哟

论坛徽章:
0
6 [报告]
发表于 2004-03-01 22:45 |只看该作者

在awk中怎么实现根据某个域的匹配进行操作?

GD啊,“什么什么先”好像只有广东有这样的说法吧?

不知MM上面想说什么啊?套路?

论坛徽章:
0
7 [报告]
发表于 2004-03-02 09:39 |只看该作者

在awk中怎么实现根据某个域的匹配进行操作?

是\*

论坛徽章:
0
8 [报告]
发表于 2004-03-02 17:22 |只看该作者

在awk中怎么实现根据某个域的匹配进行操作?

john_student的我试了不行。我写了一个,请大家指正

  1. awk '{
  2. if( $2 ~/^[^.]+\.[^.]+$/) {
  3. print $0"\tyes"
  4. }else {
  5. print $0"\tno"
  6. }
  7. }' aaa
复制代码

文本aaa内容

  1. ad adf.af
  2. fads asd
  3. adf fads.134
  4. asdf 14.41.fa
  5. adf adf
  6. adf 1..1234
  7. adf .adf
  8. adf afd.
  9. adf ..fadf
  10. adf adf..
复制代码

运行结果:

  1. ad adf.af       yes
  2. fads asd        no
  3. adf fads.134    yes
  4. asdf 14.41.fa   no
  5. adf adf no
  6. adf 1..1234     no
  7. adf .adf        no
  8. adf afd.        no
  9. adf ..fadf      no
  10. adf adf..       no
复制代码

楼主可以自行改掉我的代码的一些参数,只要留着那个匹配用的正则表达式就行了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP