PDA

Показать полную графическую версию : Поиск текста в строке


legroman
16-04-2014, 21:50
Уважаемые форумчане. Нужен VBS скрипт ищущий в текстовом файле строку, а потом в этой строке слово.
Допустим имеем файл text.txt нам известно что где то в нем есть строка которая начинается словами "Имя Сотрудника" надо найти эту строку и если в ней будут слова "Вася" или "Петя" тогда выполнить действие 1, если же в ней встретится слово "Иван" то выполнить действие 2. Заранее благодарен за помощь.

Iska
17-04-2014, 09:39
Пробуйте:
Option Explicit

Dim strSourceFile

Dim arrContent
Dim strLine


strSourceFile = "E:\Песочница\0374\text.txt"

With WScript.CreateObject("Scripting.FileSystemObject")
If .FileExists(strSourceFile) Then
With .OpenTextFile(strSourceFile)
arrContent = Split(.ReadAll(), vbCrLf)
.Close
End With

With WScript.CreateObject("VBScript.RegExp")
.IgnoreCase = True

For Each strLine In arrContent
.Pattern = "^Имя Сотрудника.*(Вася|Петя).*$"

If .Test(strLine) Then
WScript.Echo "действие 1"
End If

.Pattern = "^Имя Сотрудника.*Иван.*$"

If .Test(strLine) Then
WScript.Echo "действие 2"
End If
Next
End With
Else
WScript.Echo "Source file [" & strSourceFile & "] not found."
WScript.Quit 1
End If
End With

WScript.Quit 0

legroman
17-04-2014, 15:50
Огромное спасибо!!! Вечером буду пробовать.




© OSzone.net 2001-2012