<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; VBS: Как найти подстроку в тхт файле?]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=1560&amp;type=atom" />
	<updated>2010-11-24T12:04:09Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=1560</id>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=42143#p42143" />
			<content type="html"><![CDATA[<p><strong>lawyerly</strong><br />Создавайте пожалуйста для новых вопросов новые темы. То что вопросов много никого не смутит. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /> А вот обсуждение в одной ветке множества тем - это плохо для повторного использования.</p>]]></content>
			<author>
				<name><![CDATA[jite]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25851</uri>
			</author>
			<updated>2010-11-24T12:04:09Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=42143#p42143</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=42139#p42139" />
			<content type="html"><![CDATA[<p>Люди, подскажи пожалуйста кусок кода. Задача.<br />Я через Handle.exe узнаю PID процесса, который блокирует файл от удаления. и сохраняю это в текстовый файл.<br /></p><div class="codebox"><pre><code>Handle v3.42
Copyright (C) 1997-2008 Mark Russinovich
Sysinternals - www.sysinternals.com

1cv7.exe           pid: 3728     18: D:\copy\comp\1Cv7.LCK</code></pre></div><p>как мне в VBS выцыпить PID? что бы можно было убить процесс.</p>]]></content>
			<author>
				<name><![CDATA[lawyerly]]></name>
			</author>
			<updated>2010-11-24T11:35:08Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=42139#p42139</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=16649#p16649" />
			<content type="html"><![CDATA[<p>Перебирать файлы в цикле. Например, таким способом:<br /><a href="http://www.script-coding.com/SCI_WSC.html#WalkFilesEx">http://www.script-coding.com/SCI_WSC.html#WalkFilesEx</a></p>]]></content>
			<author>
				<name><![CDATA[The gray Cardinal]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=2</uri>
			</author>
			<updated>2008-12-04T08:09:28Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=16649#p16649</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=16645#p16645" />
			<content type="html"><![CDATA[<p>Доброго всем. Небольшой вопросик по скрипту имеется:</p><p>Этот скрипт&nbsp; находит в файле 1203.txt слова которые я забил в файл terms.txt.<br />Но вот незадача, нужно указывать точное имя файла v:\post\1203.txt. А как бы сделать по маске??? Например v:\post\*.txt ?????<br />Вот код</p><div class="codebox"><pre><code> Set objFSO = CreateObject(&quot;Scripting.FileSystemObject&quot;)
Set objFile = objFSO.OpenTextFile(&quot;v:\post\1203.txt&quot;, ForReading)
 
strContents = objFile.ReadAll
objFile.Close
 
Set objFile = objFSO.OpenTextFile(&quot;c:\Terms.txt&quot;, ForReading)
strSearchTerms = objFile.ReadAll
objFile.Close
 
arrSearchTerms = Split(strSearchTerms, vbCrLf)
 
For Each strItem in arrSearchTerms
    intFound = InStr(strContents,strItem)
    If intFound &gt; 0 Then
        Wscript.Echo &quot;У тебя  &quot; &amp; strItem &amp; &quot;ошибка.&quot;
    End If
Next</code></pre></div><p>Спасибо всем за помощь.</p>]]></content>
			<author>
				<name><![CDATA[styd]]></name>
			</author>
			<updated>2008-12-04T06:47:15Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=16645#p16645</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=11570#p11570" />
			<content type="html"><![CDATA[<p>спасибо за символ | - в регеспе помог мне <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />, а также спос, что подсказали что нужно при открытии файла учитвать его опции</p>]]></content>
			<author>
				<name><![CDATA[LL]]></name>
			</author>
			<updated>2008-06-19T09:20:21Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=11570#p11570</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=11532#p11532" />
			<content type="html"><![CDATA[<p><em>&gt; можно пример с регекспов - поиск в текстовом файле любого из слов &quot;Ошибка&quot;, &quot;Не удалось&quot;, &quot;не&quot; ?</em></p><p>Пожалуйста: /Ошибка|Не удалось|не/<br />А если регистр символов не важен, то можно и так: /Ошибка|Не/i <br />(&quot;не удалось&quot; включает в себя &quot;не&quot; и отдельно искать его необходимости нет)<br />Причем, думаю, ты на самом деле хочешь найти не то, что просишь.<br />Поиск &quot;не&quot; сработает, например, на строке содержещей слово &quot;выпол<strong>не</strong>но&quot;.<br />Если тебе нужно именно предлог &quot;не&quot;, то в регекспе не забудь пробел после него:&nbsp; /Ошибка|Не удалось|не /</p><br /><p>Хотя в данном случае проблемы не в регекспах:</p><p><em>&gt; TextStream.ReadAll() &#039;- И ПОЧЕМУ ЗДЕСЬ ОШИБКУ ВЫДАЕТ: Ошибка выполнения Microsoft VBScript: Ввод данных за пределами файла?</em></p><p>Потому что файл нулевой длины.<br />Нужно сначала проверить, что размер файла больше нуля.</p><p><em>&gt; Почему у меня на экране в результате запуска скрипта выдается это?<br />яю&amp;#8597;&amp;#9830;K&amp;#9830;?&amp;#9830;&gt;&amp;#9830;;&amp;#9830;=&amp;#9830;5&amp;#9830;=&amp;#9830;8&amp;#9830;5&amp;#9830;</em></p><p>Потому что файл в кодировке UNICODE, но ты не указываешь соответствующей опции, когда его открываешь, и он считывается как ANSI</p>]]></content>
			<author>
				<name><![CDATA[fps]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=100</uri>
			</author>
			<updated>2008-06-18T16:53:34Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=11532#p11532</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=11527#p11527" />
			<content type="html"><![CDATA[<p>можно пример с регекспов - поиск в текстовом файле любого из слов<br />&quot;Ошибка&quot;, &quot;Не удалось&quot;, &quot;не&quot; ?</p><p> вот такой код:</p><p>On Error Resume Next<br />Const ForReading = 1</p><p>Set objRegExp = CreateObject(&quot;VBScript.RegExp&quot;)<br />objRegExp.Pattern = &quot;не удалось&quot;<br />objRegExp.Global = True</p><p>Set FSO = CreateObject(&quot;Scripting.FileSystemObject&quot;)</p><p>Set Folder = FSO.GetFolder(&quot;C:\Documents and Settings\Администратор\Local Settings\Application Data\Microsoft\Windows NT\NTBackup\data&quot;)<br />For each objFile in Folder.Files<br /> WScript.Echo objFile.Name &#039; вывести имена файлов</p><p> Set File = FSO.GetFile(Folder.Path &amp; &quot;\&quot; &amp; objFile.Name)<br /> Set TextStream = File.OpenAsTextStream(1)<br /> strContents = TextStream.ReadAll() &#039;- И ПОЧЕМУ ЗДЕСЬ ОШИБКУ ВЫДАЕТ: Ошибка выполнения Microsoft VBScript: Ввод данных за пределами файла?<br /> TextStream.Close</p><br /><p>Str = strContents<br />WScript.Echo str<br />Set objMatches = objRegExp.Execute(Str)<br />For i=0 To objMatches.Count-1<br />&nbsp; &nbsp; Set objMatch = objMatches.Item(i)<br />&nbsp; &nbsp; &#039;найденное значение (подстрока)<br />&nbsp; &nbsp; &#039;индекс первого символа найденной подстроки в строке-оригинале<br />&nbsp; &nbsp; &#039;длина найденной подстроки<br />&nbsp; &nbsp; &#039;WScript.Echo objMatch.Value &amp; &quot;, &quot; &amp; &quot;FirstIndex=&quot; &amp; objMatch.FirstIndex &amp; &quot;, &quot; &amp; &quot;Length=&quot; &amp; objMatch.Length<br />&nbsp; &nbsp; &nbsp;WScript.Echo objMatch.Value<br />Next</p><p>Next</p><br /><p>В папке &quot;C:\Documents and Settings\Администратор\Local Settings\Application Data\Microsoft\Windows NT\NTBackup\data&quot; лежит <br />три файла backup01.log,backup02.log,backup03.log - только в одном файле backup03.log есть строка &quot;Операцию завершить не удалось&quot;</p><p>Почему у меня на экране в результате запуска скрипта выдается это?</p><p>backup01.log</p><p>backup02.log<br />яю&amp;#8597;&amp;#9830;K&amp;#9830;?&amp;#9830;&gt;&amp;#9830;;&amp;#9830;=&amp;#9830;5&amp;#9830;=&amp;#9830;8&amp;#9830;5&amp;#9830;<br />backup03.log<br />яю&amp;#8597;&amp;#9830;K&amp;#9830;?&amp;#9830;&gt;&amp;#9830;;&amp;#9830;=&amp;#9830;5&amp;#9830;=&amp;#9830;8&amp;#9830;5&amp;#9830;</p>]]></content>
			<author>
				<name><![CDATA[LL]]></name>
			</author>
			<updated>2008-06-18T13:05:47Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=11527#p11527</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=11491#p11491" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>alexii пишет:</cite><blockquote><p>В чём это выражается, можете пояснить <em>[не в качестве холивара, — просто я не теряю надежды приобщиться и к js]</em>?</p></blockquote></div><p>В отсутствии сокращенной формы записи регекспов - /pattern/ </p><p>JS: <br />var x=&quot;xxyyzz&quot;.match(/(y+)/i)[1];&nbsp; &nbsp; // вернет &quot;yy&quot;</p><p>сколько строк это займет на VBS?</p>]]></content>
			<author>
				<name><![CDATA[fps]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=100</uri>
			</author>
			<updated>2008-06-17T19:36:56Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=11491#p11491</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=11487#p11487" />
			<content type="html"><![CDATA[<p>OFF:<br /></p><div class="quotebox"><cite>fps пишет:</cite><blockquote><p>Со вторым нет.<br />После того, как разберешься с языком регулярных выражений, так сказать, научишься на нем думать,<br />пользоваться им затруднений не вызывает.</p></blockquote></div><p>Мне каждый раз приходится заново читать справку <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />. Правда, и работаю я с ним раз в сто лет.<br /></p><div class="quotebox"><cite>fps пишет:</cite><blockquote><p>…ввиду кривоватой формы записи регекспов в VBS</p></blockquote></div><p>В чём это выражается, можете пояснить <em>[не в качестве холивара, — просто я не теряю надежды приобщиться и к js]</em>?</p><p>P.S. Может быть, Вы имеете ввиду работу через отдельный объект?</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2008-06-17T19:21:11Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=11487#p11487</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=11479#p11479" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>alexii пишет:</cite><blockquote><p>лучший метод для подобных вещей — использование регулярных выражений (RegExp), хотя, как правило, пока это заработает — семь потов сойдёт <img src="//forum.script-coding.com/img/smilies/wink.png" width="15" height="15" />.</p></blockquote></div><p>С первым согласен.<br />На мой взгляд, ничего более эффективного для работы со строками чем RegExp пока не придумано.</p><p>Со вторым нет.<br />После того, как разберешься с языком регулярных выражений, так сказать, научишься на нем думать,<br />пользоваться им затруднений не вызывает.</p><p>Готов консультировать по составлению регекспов <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /><br />(только примеры буду приводить на JS, ввиду кривоватой формы записи регекспов в VBS)</p>]]></content>
			<author>
				<name><![CDATA[fps]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=100</uri>
			</author>
			<updated>2008-06-17T17:28:29Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=11479#p11479</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=11471#p11471" />
			<content type="html"><![CDATA[<p>А что удивительного в том, что &quot;файл с кодировкой Юникод открыватеся иероглифами при указании открывать как ANSY&quot;?<br />И кстати, ты работаешь с <strong>двумя</strong> файлами, каждый из которых имеет какую-то кодировку.</p>]]></content>
			<author>
				<name><![CDATA[The gray Cardinal]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=2</uri>
			</author>
			<updated>2008-06-17T12:00:25Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=11471#p11471</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=11470#p11470" />
			<content type="html"><![CDATA[<p>Спасибо, я проверил параметр format - objFSO.OpenTextFile(&quot;E:\Other\TEST\Terms.txt&quot;, ForReading,TristateFalse)<br />но все равно выдает теперь, что нашел, но в таком виде<br />The search term&nbsp; was found.<br />The search term&nbsp; was found.<br />The search term&nbsp; was found.</p><p>В общем для моей задачи, достаточно чтобы просто нашло, не важно уже выводится или нет, но на будущее хотелось бы раз и навсегда понять почему <br />файл с кодировкой Юникод открыватеся иероглифами при указании открывать как ANSY?</p>]]></content>
			<author>
				<name><![CDATA[LL]]></name>
			</author>
			<updated>2008-06-17T11:38:11Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=11470#p11470</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=11468#p11468" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>LL пишет:</cite><blockquote><p>возможно у вас другая кодировка</p></blockquote></div><p>Поскольку прямых указаний на то не было, я использовал ANSI (Win-1251).</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2008-06-17T11:21:01Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=11468#p11468</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=11466#p11466" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>LL пишет:</cite><blockquote><p>А где предусмотреть Юникод, UTF, ANSI ?</p></blockquote></div><p><a href="http://www.script-coding.com/WSH/FileSystemObject.html#3.24.">http://www.script-coding.com/WSH/FileSy … html#3.24.</a></p>]]></content>
			<author>
				<name><![CDATA[The gray Cardinal]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=2</uri>
			</author>
			<updated>2008-06-17T10:30:29Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=11466#p11466</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Как найти подстроку в тхт файле?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=11462#p11462" />
			<content type="html"><![CDATA[<p>возможно у вас другая кодировка<br />А где предусмотреть Юникод, UTF, ANSI ?</p>]]></content>
			<author>
				<name><![CDATA[LL]]></name>
			</author>
			<updated>2008-06-17T09:49:43Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=11462#p11462</id>
		</entry>
</feed>
