找回密码
 加入
搜索
查看: 5822|回复: 5

[AU3基础] 求正则<已解决>

  [复制链接]
发表于 2014-5-24 08:51:32 | 显示全部楼层 |阅读模式
本帖最后由 fuldho 于 2014-5-27 07:50 编辑

#include <Array.au3>
$Str="(FOLDER) C:\Program Files\Common Files\Thunder Network\ServicePlatform" & @CRLF & _
       "(*)(FILE) stat.xml" & @CRLF & _
        "2014/5/23 17:13, 8 bytes, A ==> 2014/5/23 17:14, 8 bytes, A" & @CRLF & _
    "(FOLDER) C:\Program Files\TAP-Windows" & @CRLF & _
       "(*)(FILE) Uninstall.exe" & @CRLF & _
        "2014/5/23 17:12, 83823 bytes, A ==> 2014/5/23 17:14, 83823 bytes, A" & @CRLF & _
    "(FOLDER) C:\Users\Administrator\AppData\Roaming\Tencent\Logs" & @CRLF & _
       "(*)(FILE) QQ.tlg" & @CRLF & _
        "2014/5/23 16:58, 11309816 bytes, A ==> 2014/5/23 17:13, 11619124 bytes, A" & @CRLF & _
    "(FOLDER) C:\Windows\inf" & @CRLF & _
       "(+)(FILE) oem9.inf = 2014/5/23 17:14, 7271 bytes, A" & @CRLF & _
       "(+)(FILE) oem9.PNF = 2014/5/23 17:14, 8304 bytes, A" & @CRLF & _
       "(*)(FILE) setupapi.dev.log" & @CRLF & _
       " 2014/5/23 17:12, 2839343 bytes, A ==> 2014/5/23 17:14, 2917412 bytes, A" & @CRLF & _
       "(*)(FILE) setupapi.ev1" & @CRLF & _
       " 2014/5/23 17:12, 6240 bytes, A ==> 2014/5/23 17:14, 6296 bytes, A" & @CRLF & _
       "(*)(FILE) setupapi.ev2" & @CRLF & _
       " 2014/1/4 15:36, 7416 bytes, A ==> 2014/5/23 17:14, 7448 bytes, A" & @CRLF & _
       "(*)(FILE) setupapi.ev3" & @CRLF & _
        "2014/5/23 17:12, 86016 bytes, A ==> 2014/5/23 17:14, 86016 bytes, A" & @CRLF & _
    "(FOLDER) C:\Windows\System32\catroot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}" & @CRLF & _
       "(+)(FILE) oem9.CAT = 2013/8/22 20:40, 10476 bytes, S" & @CRLF & _
    "(FOLDER) C:\Windows\System32\drivers" & @CRLF & _
      " (+)(FILE) tap0901.sys = 2013/8/22 20:40, 35288 bytes, A" & @CRLF & _
    "(FOLDER) C:\Windows\System32\DriverStore" & @CRLF & _
      " (*)(FILE) INFCACHE.1" & @CRLF & _
      "  2014/1/4 15:36, 1539176 bytes, A ==> 2014/5/23 17:14, 1539288 bytes, A" & @CRLF & _
      " (*)(FILE) infpub.dat" & @CRLF & _
      "  2014/1/4 15:36, 86016 bytes, A ==> 2014/5/23 17:14, 86016 bytes, A" & @CRLF & _
      " (*)(FILE) infstor.dat" & @CRLF & _
      "  2014/1/4 15:36, 143360 bytes, A ==> 2014/5/23 17:14, 143360 bytes, A" & @CRLF & _
      " (*)(FILE) infstrng.dat" & @CRLF & _
     "   2014/1/4 15:36, 143360 bytes, A ==> 2014/5/23 17:14, 143360 bytes, A" & @CRLF & _
    "(+)(FOLDER) C:\Windows\System32\DriverStore\FileRepository\oemwin2k.inf_x86_neutral_4a65d8f20107343c" & @CRLF & _
      " (+)(FILE) oemwin2k.inf = 2013/8/22 19:38, 7271 bytes, A" & @CRLF & _
     "  (+)(FILE) oemwin2k.PNF = 2014/5/23 17:14, 8304 bytes, A" & @CRLF & _
      " (+)(FILE) tap0901.cat = 2013/8/22 20:40, 10476 bytes, A" & @CRLF & _
      " (+)(FILE) tap0901.sys = 2013/8/22 20:40, 35288 bytes, A"


$nstr1 = StringRegExp($str, "\(FOLDER\)(.*?)\r", 3)
_ArrayDisplay($nstr1)
$nstr2 = StringRegExp($str, "\(FILE\)(.*?)=", 3)
_ArrayDisplay($nstr2)

把每个文件夹FOLDER下的文件匹配到该文件夹下
如第一个FOLDER
C:\Program Files\Common Files\Thunder Network\ServicePlatform\stat.xml

C:\Program Files\Common Files\Thunder Network\ServicePlatform
stat.xml
最后一个FOLDER
C:\Windows\System32\DriverStore\FileRepository\oemwin2k.inf_x86_neutral_4a65d8f20107343c\oemwin2k.inf

C:\Windows\System32\DriverStore\FileRepository\oemwin2k.inf_x86_neutral_4a65d8f20107343c\oemwin2k.PNF
....

先谢谢了
发表于 2014-5-24 15:32:55 | 显示全部楼层
试下
StringRegExpReplace($str, '(?mi)^\h*[\d/:\h]+,.+?>\V+\v+|\h*=\h*[\d/:\h]+,\h*\d+\h*bytes,\V+|^\h*(?:\([*+]\))?\((?:FOLDER|FILE)\)\h+', '')
剔干净后按需使用

评分

参与人数 1金钱 +28 收起 理由
fuldho + 28 感谢!

查看全部评分

发表于 2014-5-25 13:18:47 | 显示全部楼层
回复 2# afan


    A版,我表示没有看懂题目~您竟然明白了~
 楼主| 发表于 2014-5-27 07:41:53 | 显示全部楼层
本帖最后由 fuldho 于 2014-5-27 07:51 编辑

回复 2# afan

非常感谢 afan 版主,
替换方法,厉害!
二次整理就可以了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2014-5-27 09:03:37 | 显示全部楼层
回复 3# haijie1223


    同感,表示也没看懂题目。不过,为啥A大的正则每次都那么长,那么销魂。。。

评分

参与人数 1金钱 +10 收起 理由
afan + 10 销魂都被你发现了…… ^ ^

查看全部评分

发表于 2014-5-27 09:16:59 | 显示全部楼层
还看不懂,小菜鸟路过,感谢各位大大支持、
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-4-29 07:59 , Processed in 0.090402 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表