fybhwsx 发表于 2014-7-14 20:46:40

【已解决】求个正则语句,获取文件路径中的文件名称。

本帖最后由 fybhwsx 于 2014-7-14 23:31 编辑

D:\lk\Autoit_vcs\vsc598_x64_portable.zip
D:\lk\Autoit_vcs\vsc768_x64_portable.zip

怎样获取
vsc598_x64_portable

vsc768_x64_portable

用正则获取文件名呢?

user3000 发表于 2014-7-14 21:04:28

回复 1# fybhwsx
有点冗长,但能用.
久不玩, 超不自信矣!Local $sStr = 'D:\lk\Autoit_vcs\vsc768_x64_portable.zip'
If StringRegExp($sStr, '.+\\.+\.\w{3}') = 1 Then         
      MsgBox(0,0,StringRegExpReplace($sStr, '.+\\([^\.\\]+)\..+', '\1'))
Else
      MsgBox(0,'请检查此路径', $sStr)
EndIf

fybhwsx 发表于 2014-7-14 21:10:24

回复fybhwsx
有点冗长,但能用.
久不玩, 超不自信矣!
user3000 发表于 2014-7-14 21:04 http://www.autoitx.com/images/common/back.gif


    好用,谢谢!

lpxx 发表于 2014-7-14 22:54:48

本帖最后由 lpxx 于 2014-7-14 22:57 编辑


#include <Array.au3>
Local $Str = _
                'D:\lk\Autoit_vcs\vsc598_x64_portable.zip' & @CRLF & _
                'D:\lk\Autoit_vcs\vsc768_x64_portable.zip' & @CRLF
MsgBox(0, '原字符串', $Str)
Local $Test = StringRegExp($str, '(?:^.*)\\(.*)', 3, 1)
If Not @Error Then MsgBox(0, '匹配数量: ' & UBound($Test), '其中元素为: ' & $Test)
_ArrayDisplay($Test, UBound($Test))

fybhwsx 发表于 2014-7-14 23:31:18

本帖最后由 fybhwsx 于 2014-7-14 23:35 编辑


lpxx 发表于 2014-7-14 22:54 http://www.autoitx.com/images/common/back.gif


    谢谢,又一个新写法,不过好像有些问题哦。
页: [1]
查看完整版本: 【已解决】求个正则语句,获取文件路径中的文件名称。