标题: [已解决]VBS正则表达式提取 [打印本页]
作者: lxl13596 时间: 2009-4-18 04:13 标题: [已解决]VBS正则表达式提取
1.txt中的内容为
dsaf="ftp://abc.dsfds.html"
sdfsdafs[论坛禁用语言]sdff
fsdafs
dsadf="ftp://abc.dsfds.html"
我想提取出每行中ftp://至.html之间的字符,可以遍历整个1.txt,
我使了readline,但每当其中任意一行不同时含用ftp://和.html就会出错
请高手教下我,正则好难呀,
十分感谢!
[ 本帖最后由 lxl13596 于 2009-4-18 14:37 编辑 ]
作者: youxi01 时间: 2009-4-18 09:10
试试:- Function RegExpTest(patrn, strng)
- Dim regEx, Match, Matches ' 建立变量。
- Set regEx = New RegExp ' 建立正则表达式。
- regEx.Pattern = patrn ' 设置模式。
- regEx.IgnoreCase = True ' 设置是否区分大小写。
- regEx.Global = True ' 设置全程可用性。
- Set Matches = regEx.Execute(strng) ' 执行搜索。
- For Each Match in Matches ' 遍历 Matches 集合。
- vStr=mid(Match.value,7,Len(Match.value)-11)
- RetStr = RetStr & vStr & vbcrlf
- Next
- RegExpTest = RetStr
- set regEx=nothing
- End Function
- set FSO=Wscript.CreateObject("Scripting.FileSystemObject")
- set F=FSO.opentextfile("1.txt",1)
- txt=f.readall
- MsgBox(RegExpTest("ftp://.*\.html", txt))
- set FSO=nothing
复制代码
当然,这里的正则结果是用匹配集合实现,也可以用replace来实现,会更简洁...
作者: lxl13596 时间: 2009-4-18 14:36 标题: 多多感谢管理员的支持
谢谢!愿咱们论坛越来越强大!
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |