tarcy118 发表于 2011-10-5 00:40:54

这个正规则怎么写 已解决

本帖最后由 tarcy118 于 2011-10-5 01:24 编辑

D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\bn110815001.swf
D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\mssj110916ica.swf
D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\fkxd110926pop.swf
D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\ppzs110929ica.swf
D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\cso111003pop.swf

我想问下,要怎么写才能读取advertise\后的文件名如bn110815001.swf

zcool321 发表于 2011-10-5 01:01:40

如果路径不变的话~
D:\\ProgramFiles\\Hintsoft\\PubwinServer\\appServ\\server\\webapps\\NetCafe\\advertise\\([\w|\W]*?\.swf)
这样就可以~然后取第一组.
autoit代码:$testStr = "D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\bn110815001.swf"        _
&"D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\mssj110916ica.swf"        _
&"D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\fkxd110926pop.swf"        _
&"D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\ppzs110929ica.swf"        _
&"D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\cso111003pop.swf"
$array = StringRegExp($testStr, 'D:\\ProgramFiles\\Hintsoft\\PubwinServer\\appServ\\server\\webapps\\NetCafe\\advertise\\([\w|\W]*?\.swf)', 3)

for $i = 0 to UBound($array) - 1
    msgbox(0, "RegExpTest:" & $i, $array[$i])
Next

gzh888666 发表于 2011-10-5 01:20:41

本帖最后由 gzh888666 于 2011-10-5 01:49 编辑

D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\bn110815001.swf
D:\P ...
tarcy118 发表于 2011-10-5 00:40 http://www.autoitx.com/images/common/back.gif#include <Array.au3>
Local $Str = _
                'D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\bn110815001.swf' & @CRLF & _
                'D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\mssj110916ica.swf' & @CRLF & _
                'D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\fkxd110926pop.swf' & @CRLF & _
                'D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\ppzs110929ica.swf' & @CRLF & _
                'D:\ProgramFiles\Hintsoft\PubwinServer\appServ\server\webapps\NetCafe\advertise\cso111003pop.swf' & @CRLF
Local $Test = StringRegExp($str, '([^\\]+?)\n', 3)
If Not @Error Then MsgBox(0, '匹配数量: ' & UBound($Test), '其中元素为: ' & $Test)
_ArrayDisplay($Test, UBound($Test))

tarcy118 发表于 2011-10-5 01:24:22

太感谢了!!!
页: [1]
查看完整版本: 这个正规则怎么写 已解决