Linux-正则表达式-反选练习 - Go语言中文社区

Linux-正则表达式-反选练习


练习文本如下,保存为test.txt

Archive:  drgeo-oneclick.zip
 Length   Method    Size  Ratio   Date   Time   CRC-32    Name
--------  ------  ------- -----   ----   ----   ------    ----
       0  Stored        0   0%  10-01-08 03:53  00000000  dg/
     255  Defl:N      180  29%  09-28-08 16:35  4a44e011  dg/drgeo.ini
     193  Defl:N      156  19%  09-28-08 16:38  d8a04bc6  dg/drgeo.sh
     432  Defl:N      276  36%  09-28-08 17:59  02381895  dg/ChangeLog
    7639  Defl:N     2621  66%  01-31-08 04:19  75312e7a  dg/LICENSE
  995840  Defl:N   379701  62%  11-10-07 16:37  bf870ea0  dg/drgeo.exe
       0  Stored        0   0%  09-28-08 18:08  00000000  dg/c/
    2336  Defl:N      679  71%  09-28-08 18:07  e3415ff4  dg/c/Info.plist
       8  Stored        8   0%  06-10-07 08:25  00fa327e  dg/c/PkgInfo
       0  Stored        0   0%  10-01-08 04:18  00000000  dg/c/res/
       0  Stored        0   0%  11-18-07 00:28  00000000  dg/c/MacOS/
       0  Stored        0   0%  09-22-08 02:55  00000000  dg/c/Linux686/
   38206  Defl:N     9537  75%  09-28-08 17:18  094d9a57  dg/c/res/drgeo.icns
 2320771  Defl:N   546350  77%  10-01-08 04:17  48525057  dg/c/res/drgeo.changes
18141632  Defl:N  8169067  55%  10-01-08 04:17  d2e65bd2  dg/c/res/drgeo.image
       0  Stored        0   0%  10-01-08 04:18  00000000  dg/c/res/My Squeak/
       0  Stored        0   0%  10-01-08 02:47  00000000  dg/c/res/secure/
       0  Stored        0   0%  10-01-08 03:53  00000000  dg/c/res/examples/
     941  Defl:N      313  67%  10-01-08 02:47  edb9783f  dg/c/res/secure/Squeak.keys
   13751  Defl:N     1494  89%  12-22-06 19:33  9d788893  dg/c/res/examples/wheel.fgeo
    4372  Defl:N      676  85%  12-22-06 19:33  b02b00db  dg/c/res/examples/varignon.fgeo
    9341  Defl:N     1120  88%  12-22-06 19:33  d854c80f  dg/c/res/examples/triangles-homothetiques.fgeo
    1803  Defl:N      365  80%  01-29-08 05:41  c0e75f9c  dg/c/res/examples/tetraedre.fgeo
    4256  Defl:N      697  84%  12-22-06 19:33  915739e6  dg/c/res/examples/refraction.fgeo
    6016  Defl:N      818  86%  01-29-08 05:41  1739701a  dg/c/res/examples/pyramide_base_rect.fgeo
    7823  Defl:N      941  88%  12-22-06 19:33  6318b04f  dg/c/res/examples/mercedes.fgeo
    7574  Defl:N     1042  86%  12-22-06 19:33  49daf029  dg/c/res/examples/lens.fgeo
   12137  Defl:N     1183  90%  01-29-08 05:34  adb74826  dg/c/res/examples/exemple_3d.fgeo
    3789  Defl:N      618  84%  12-22-06 19:33  9711fecc  dg/c/res/examples/euler-line.fgeo
    6921  Defl:N      874  87%  01-29-08 05:08  21693921  dg/c/res/examples/cube.fgeo
    2054  Defl:N      473  77%  12-22-06 19:33  5aaef865  dg/c/res/examples/angle-inscrit.fgeo
 2587868  Defl:N  1050245  59%  06-10-07 08:27  6f243f86  dg/c/MacOS/squeak
   22399  Defl:N     9495  58%  11-10-07 17:45  4632473c  dg/c/Linux686/AioPlugin
   17144  Defl:N     7963  54%  11-10-07 17:45  d83c7211  dg/c/Linux686/npsqueak.so
   29128  Defl:N    12871  56%  11-10-07 17:45  12889f3a  dg/c/Linux686/PseudoTTYPlugin
 2853195  Defl:N  1000109  65%  11-10-07 17:45  c4e06d64  dg/c/Linux686/squeak
  167923  Defl:N    74932  55%  11-10-07 17:45  dac39dcf  dg/c/Linux686/Squeak3D
   91930  Defl:N    34071  63%  11-10-07 17:45  4a43f2a5  dg/c/Linux686/UnixOSProcessPlugin
   87661  Defl:N    38083  57%  11-10-07 17:45  5b09e49b  dg/c/Linux686/vm-display-fbdev
   18363  Defl:N     7230  61%  11-10-07 17:45  69dec6cf  dg/c/Linux686/vm-display-null
  159358  Defl:N    70409  56%  11-10-07 17:45  684a8a9d  dg/c/Linux686/vm-display-X11
   36270  Defl:N    14162  61%  11-10-07 17:45  480e228e  dg/c/Linux686/vm-sound-ALSA
   12797  Defl:N     5083  60%  11-10-07 17:45  5c4a1e29  dg/c/Linux686/vm-sound-null
   54917  Defl:N    21578  61%  11-10-07 17:45  b5e6c293  dg/c/Linux686/vm-sound-OSS
   21170  Defl:N     9001  58%  11-10-07 17:45  a6511bd8  dg/c/Linux686/XDisplayControlPlugin
--------          -------  ---                            -------
27748213         11474421  59%                            45 files

一、反选第一列:

[root@hadoop tmp]# less test.txt

使用less查看test.txt后,输入/,表示查找字符,为了使第一列反选,使用的正则表达式为:^s*[0-9]+,效果如下图所示:


二、反选第二列

仔细观察第二列的数据,主要由Defl:N或者Stored组成,因此,我们使用正则表达式为:Defl:N|Stored,效果如下:

三、由于第三列的特征不明显,因此第三列和第四列一起反选:

使用正则表达式为:s*[0-9]+s*[0-9]{2}%,反选效果如下:

四、单独反选第四列:

使用正则表达式:[0-9]{2}%,效果如下图所示:


五、反选第五列

使用正则表达式:([0-9]{2}-){2}[0-9]{2}s[0-9]{2}:[0-9]{2},效果如下图所示:


六、反选第六列

初步观察,可使用正则表达式[0-9a-z]{8},但选择的数据包含了不想要得数据,如下图所示:


如何改进?通过在上述正则表达式的前后增加空白,则改进后的正则表达式为:s[0-9a-z]{8}s,效果如下图所示:


七、反选最后一列

使用正则表达式:[a-z]*/.*$,效果如下图所示:


八、选择列表中,文件的后缀

使用正则表达式:..*$,效果如下图所示:


九、如何列出上述列表中的所有目录?

使用正则表达式:[a-z]+/$,效果如下图所示:


原文出处为:http://user.frdm.info/ckhung/b/re/hilight.php


版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/zhangyu_kenshin/article/details/23377517
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-06-28 03:38:35
  • 阅读 ( 1418 )
  • 分类:Linux

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢