t895073 发表于 2012-4-18 11:50:51

[已解决]正则提取txt文檔特定內容

本帖最后由 t895073 于 2012-4-19 09:44 编辑

正则提取txt文档特定内容
txt内容为
------------------------------------------
C:\abc\bisc\psm
C:\abc\bisc\stat
C:\abc\ac\host\msmed
C:\abc\net\file\204\ails
C:\abc\net\file\204\bcmsdh
C:\abc\net\file\204\116\bc
C:\abc\infer\file2004\201\1160\bcommal_ca
C:\abc\net\file\ext\110\bocm
------------------------------------------
我要抓出最后 \ 后名称
用msgbox 一次一个显示出来要怎么弄呢?
如: MSGBOX 第一次显示 psm 案确定后 在显示 stat
在显示 msmed 一直显示完!
谢谢

afan 发表于 2012-4-18 11:55:23

Local $Str = _
                'C:\abc\bisc\psm' & @CRLF & _
                'C:\abc\bisc\stat' & @CRLF & _
                'C:\abc\ac\host\msmed' & @CRLF & _
                'C:\abc\net\file\204\ails' & @CRLF & _
                'C:\abc\net\file\204\bcmsdh' & @CRLF & _
                'C:\abc\net\file\204\116\bc' & @CRLF & _
                'C:\abc\infer\file2004\201\1160\bcommal_ca' & @CRLF & _
                'C:\abc\net\file\ext\110\bocm'
;MsgBox(0, '原字符串', $Str)
Local $aSR = StringRegExp($Str, '(?m)[^\\]+$', 3)
If @error Then Exit -1
For $i = 0 To UBound($aSR) - 1
        MsgBox(0, $i, $aSR[$i])
Next

t895073 发表于 2012-4-18 12:03:24

真的很感谢afan帮忙
想好久..谢谢!!
不太懂() 跟 [] 的不同

xms77 发表于 2012-4-18 12:38:20

回复 1# t895073 Local $Str = _
                'C:\abc\bisc\psm' & @CRLF & _
                'C:\abc\bisc\stat' & @CRLF & _
                'C:\abc\ac\host\msmed' & @CRLF & _
                'C:\abc\net\file\204\ails' & @CRLF & _
                'C:\abc\net\file\204\bcmsdh' & @CRLF & _
                'C:\abc\net\file\204\116\bc' & @CRLF & _
                'C:\abc\infer\file2004\201\1160\bcommal_ca' & @CRLF & _
                'C:\abc\net\file\ext\110\bocm' & @CRLF
MsgBox(0, '原字符串', $Str)
Local $Test = StringRegExp($str, '\\(\w+)\s', 3)
If Not @Error Then
        For $i = 0 To UBound($test)-1
                MsgBox(0,"提取的字符",$test[$i])
        next
EndIf

leon460 发表于 2012-4-18 16:27:07

afan 绝对是正则表达式的高手,我也有好多问题请教过他,直接要代码了
万能的afan{:face (356):}

xms77 发表于 2012-4-18 20:58:34

回复 2# afan
请教Afan大大,'?m'是什么意思啊?

xms77 发表于 2012-4-18 20:59:16

回复 1# t895073
楼主可以结贴了,论坛规则。。。。。

afan 发表于 2012-4-18 20:59:44

回复 6# xms77


    单行模式。表达式在每行进行匹配。

xms77 发表于 2012-4-18 21:00:37

回复 8# afan
大大速度太快了,刚刷新就回复了,感谢!

whitehead 发表于 2012-4-18 21:06:56

(?m)里的?m代表什么呢?
还得继续学习

afan 发表于 2012-4-18 21:09:08

回复 10# whitehead


    8#已经回复了…

whitehead 发表于 2012-4-18 21:11:33

学习了,谢谢

whitehead 发表于 2012-4-18 21:13:38

速度太快了,我在考虑要不要提问的时侯,答案已出来了

t895073 发表于 2012-4-19 09:48:24

感谢大家帮忙
学习了

卫和谐 发表于 2012-4-20 23:21:56

正则太好了,不会用...
页: [1]
查看完整版本: [已解决]正则提取txt文檔特定內容