Показать полную графическую версию : Поиск строки с определенными символами
dima9069
21-12-2012, 22:49
Уважаемые, прошу поделиться мнениями по поводу вот такой задачи автоматизации: есть текстовый файл 1.txt (http://forum.oszone.net/attachment.php?attachmentid=91827&stc=1&d=1356116124), необходимо организовать какой-то цикл, в кот. нужно искать строки с определенными символами (допустим названия сайтов) и впереди этих строк поставить 2 знака "//". Возможно ли такое?
есть текстовый файл 1.txt (http://forum.oszone.net/attachment.p...&d=1356116124), »
Страница не найдена.
dima9069
22-12-2012, 16:16
Извиняюсь http://rghost.ru/private/42427105/ded54c545edc4e1b9fbd236c5708de5b
dima9069, теперь выложите ещё один файл — результирующий. Пока не очень понятно, куда подставлять.
dima9069
22-12-2012, 17:46
http://rghost.ru/private/42427105/de...bd236c5708de5b а возможен поиск такого к примеру "starsbux.ru"
http://rghost.ru/private/42427105/de...bd236c5708de5b »
С какой попытки научитесь вставлять ссылки?
404 this page is not found
dima9069
22-12-2012, 18:02
http://rghost.ru/private/42430223/9287459085268caf1cddae747a0b67f3 - эта уж точно
dima9069, Вы явно меня не поняли. Мне не нужны два одинаковых файла. Я просил Вас взять первый файл (http://forum.oszone.net/post-2051012.html#post2051012), поставить «ручками» в нужных местах символы «//», сохранить его под другим именем и выложить именно его.
dima9069
22-12-2012, 18:44
А ну тогда второй файл http://rghost.ru/private/42431443/01f7bd48d8cdd655f56497fd81543e8d
dima9069, сожалею, но я не могу понять Вашей логики.
dima9069
22-12-2012, 19:26
Cмотрите строка до изменения
jl[1]0lh[2][3]starsbux.ru[4][5][6]gregbux.ru[7]c576a44d915ad167f5f25d9c631041c4[8][9]000[10]0[11]0[12][13][14]<none>[15]
и строка после изменения
//jl[1]0lh[2][3]starsbux.ru[4][5][6]gregbux.ru[7]c576a44d915ad167f5f25d9c631041c4[8][9]000[10]0[11]0[12][13][14]<none>[15]
но строк может быть много. Т.е. перед starsbux.ru может быть неизвестно сколько знаков
dima9069, почему тогда Вы не вставили «//» перед прочими строками?
dima9069
26-12-2012, 00:54
Iska, сделать бы задачу хотя бы для одного названия сайта было бы неплохо
dima9069, всё равно мало информации для того, чтобы однозначно определять имена сайтов. Максимум, на что можно тут ориентироваться — на имена корневых доменов. Плюс символы перенаправления «<»/«>» внутри текстового файла.
Попробуйте WSH:
Option Explicit
Dim strSourceFile
Dim strTempFileName
Dim objRegExp
Dim objFSO
Dim objTS
Dim strLine
If WScript.Arguments.Count = 1 Then
strSourceFile = WScript.Arguments.Item(0)
With WScript.CreateObject("Scripting.FileSystemObject")
If .FileExists(strSourceFile) Then
Set objRegExp = WScript.CreateObject("VBScript.RegExp")
With objRegExp
.IgnoreCase = True
.Pattern = ".*\.(com|org|net|info|ru)[^a-z].*"
End With
strTempFileName = GetTemporaryName()
Set objTS = .CreateTextFile(strTempFileName)
With .OpenTextFile(strSourceFile)
Do Until .AtEndOfStream
strLine = .ReadLine()
If objRegExp.Test(strLine) Then
objTS.WriteLine "//" & strLine
Else
objTS.WriteLine strLine
End If
Loop
.Close
End With
objTS.Close
Set objTS = Nothing
With .GetFile(strSourceFile)
.Name = .Name & ".bak"
End With
.CopyFile strTempFileName, strSourceFile
.DeleteFile strTempFileName
Else
WScript.Echo "Source file [" & strSourceFile & "] not found"
End If
End With
Set objRegExp = Nothing
Else
WScript.Echo "Usage: cscript.exe //nologo " & WScript.ScriptName & " <Source file>"
End If
WScript.Quit 0
'=============================================================================
'=============================================================================
' Серый форум / VBScript: генерация пути для временного файла или папки
' (http://forum.script-coding.com/viewtopic.php?id=1221)
'=============================================================================
Function GetTemporaryName()
Const TemporaryFolder = 2
Dim strTempName
With WScript.CreateObject("Scripting.FileSystemObject")
Do
strTempName = .BuildPath(.GetSpecialFolder(TemporaryFolder), .GetTempName)
Loop While .FileExists(strTempName) Or .FolderExists(strTempName)
End With
GetTemporaryName = strTempName
End Function
'=============================================================================
Имя/путь исходного файла задавайте параметром скрипта (можно просто перетащить Ваш файл на скрипт в Проводнике).
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC