本帖最后由 apang 于 2013-2-22 14:37 编辑
保存为test.vbs,试试- Set FSO = CreateObject("Scripting.FileSystemObject")
- Set f = FSO.OpenTextFile("a.txt")
- Do Until f.AtEndOfStream
- s = f.ReadLine '循环读取a.txt每一行
- Text = Text & s & vbLf
- '在每行后加换行符,赋值给变量Text
- Loop
- f.Close :Set f = Nothing
-
- Set f = FSO.OpenTextFile("b.txt")
- Do Until f.AtEndOfStream
- s = f.ReadLine '循环读取b.txt每一行
- If InStr(vbLf & Text,vbLf & s & vbLf) = 0 Then GetStr
- '如果该行字串在Text变量中不存在
- Loop
- MsgBox "OK"
-
- Sub GetStr()
- Set Re = New RegExp
- Re.Pattern = "^(.*\s+)\S+$" '正则表达式
- For Each a in Re.Execute(s)
- If InStr(vbLf & Text,vbLf & a.SubMatches(0)) Then
- '如果该行前4项字串在Text中存在,将该行写入c.txt
- FSO.OpenTextFile("c.txt",8,True).WriteLine s
- End If
- Next
- End Sub
复制代码 还是保险点,修改下 |