<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; VBScript: Как отформатировать текстовый файл в нужный формат]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=6156</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=6156&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «VBScript: Как отформатировать текстовый файл в нужный формат».]]></description>
		<lastBuildDate>Sun, 04 Sep 2011 10:42:22 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: VBScript: Как отформатировать текстовый файл в нужный формат]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=51159#p51159</link>
			<description><![CDATA[<p><strong>kdesys</strong>, спасибо, ясно. Попробуем.</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Sun, 04 Sep 2011 10:42:22 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=51159#p51159</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBScript: Как отформатировать текстовый файл в нужный формат]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=51157#p51157</link>
			<description><![CDATA[<div class="quotebox"><cite>alexii пишет:</cite><blockquote><div class="quotebox"><cite>kdesys пишет:</cite><blockquote><p>Как оказалось, в некоторых случаях, да.</p></blockquote></div><p>1. То есть, вместо именно «Руководителю» только «Иванову Ивану Ивановичу», так?<br />2. Но всё равно, это будет одна строка?</p></blockquote></div><p>1 и 2 да, именно так.</p>]]></description>
			<author><![CDATA[null@example.com (kdesys)]]></author>
			<pubDate>Sun, 04 Sep 2011 10:09:13 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=51157#p51157</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBScript: Как отформатировать текстовый файл в нужный формат]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=51132#p51132</link>
			<description><![CDATA[<div class="quotebox"><cite>kdesys пишет:</cite><blockquote><p>Как оказалось, в некоторых случаях, да.</p></blockquote></div><p>1. То есть, вместо именно «Руководителю» только «Иванову Ивану Ивановичу», так?<br />2. Но всё равно, это будет одна строка?</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Sat, 03 Sep 2011 12:32:26 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=51132#p51132</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBScript: Как отформатировать текстовый файл в нужный формат]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=51131#p51131</link>
			<description><![CDATA[<div class="quotebox"><cite>alexii пишет:</cite><blockquote><p>...пожертвование на содержание сайта и форума может и примет...</p></blockquote></div><p>отписался.<br /></p><div class="quotebox"><cite>alexii пишет:</cite><blockquote><p>Там может быть реальное имя?</p></blockquote></div><p>Как оказалось, в некоторых случаях, да.</p>]]></description>
			<author><![CDATA[null@example.com (kdesys)]]></author>
			<pubDate>Sat, 03 Sep 2011 12:10:49 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=51131#p51131</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBScript: Как отформатировать текстовый файл в нужный формат]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=50936#p50936</link>
			<description><![CDATA[<div class="quotebox"><cite>kdesys пишет:</cite><blockquote><p>Напиши, куда выслать электронных денег на пиво. Можно в личку, я настаиваю. :-)</p></blockquote></div><p>Напишите, пожалуйста, в личку <strong><a href="http://forum.script-coding.com/profile.php?id=18421">atomix</a></strong>&#039;у, насчёт пива не уверен, а пожертвование на содержание сайта и форума может и примет.<br /></p><div class="quotebox"><cite>kdesys пишет:</cite><blockquote><p>P.S. А можно не привязываться к строке Руководитель?</p></blockquote></div><p>Там может быть реальное имя?</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Mon, 29 Aug 2011 16:25:32 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=50936#p50936</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBScript: Как отформатировать текстовый файл в нужный формат]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=50934#p50934</link>
			<description><![CDATA[<div class="quotebox"><cite>alexii пишет:</cite><blockquote><p>Попробуйте так:<br />Примерный вид вызова скрипта:<br /><strong>cscript.exe &quot;E:\Песочница\0067\Script.vbs&quot; &quot;E:\Песочница\0067\In.txt&quot; &gt;&quot;E:\Песочница\0067\Out.txt&quot;</strong><br />P.S. Может быть, можно было и проще, скажем — одними регулярными выражениями обойтись.</p></blockquote></div><p>Ух ты, супер. Спасибо!!!<br />Напиши, куда выслать электронных денег на пиво.<br />Можно в личку, я настаиваю. :-)</p><p>P.S. А можно не привязываться к строке Руководитель?</p>]]></description>
			<author><![CDATA[null@example.com (kdesys)]]></author>
			<pubDate>Mon, 29 Aug 2011 06:08:31 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=50934#p50934</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBScript: Как отформатировать текстовый файл в нужный формат]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=50926#p50926</link>
			<description><![CDATA[<p>Попробуйте так:<br /></p><div class="codebox"><pre><code>Option Explicit

Const ForReading   = 1

Dim objFSO
Dim objRegExp

Dim strValue
Dim strOrganization
Dim strAddress


Set objFSO = WScript.CreateObject(&quot;Scripting.FileSystemObject&quot;)

If objFSO.FileExists(WScript.Arguments.Item(0)) Then
    Set objRegExp = WScript.CreateObject(&quot;VBScript.RegExp&quot;)
    
    objRegExp.IgnoreCase = True
    
    With objFSO.OpenTextFile(WScript.Arguments.Item(0), ForReading)
        Do Until .AtEndOfStream
            strValue = .ReadLine()
            
            If Len(strValue) &lt;&gt; 0 Then
                strOrganization   = strValue
                objRegExp.Pattern = &quot;\d{6}.*&quot;
                
                Do
                    strValue = .ReadLine()
                    
                    If objRegExp.Test(strValue) Then
                        Exit Do
                    Else
                        strOrganization = strOrganization &amp; &quot; &quot; &amp; strValue
                    End If
                Loop
                
                strAddress        = strValue
                objRegExp.Pattern = &quot;Руководителю&quot;
                
                Do
                    strValue = .ReadLine()
                    
                    If objRegExp.Test(strValue) Then
                        Exit Do
                    Else
                        strAddress = strAddress &amp; &quot; &quot; &amp; strValue
                    End If
                Loop
                
                WScript.Echo _
                    strOrganization &amp; vbCrLf &amp; _
                    strAddress &amp; vbCrLf &amp; _
                    strValue
            Else
                WScript.Echo
            End If
        Loop
    End With
    
    Set objRegExp = Nothing
Else
    WScript.Echo &quot;File [&quot; &amp; WScript.Arguments.Item(0) &amp; &quot;] not found&quot;
End If

Set objFSO = Nothing

WScript.Quit 0</code></pre></div><p>Примерный вид вызова скрипта:<br /></p><div class="codebox"><pre><code>cscript.exe &quot;E:\Песочница\0067\Script.vbs&quot; &quot;E:\Песочница\0067\In.txt&quot; &gt;&quot;E:\Песочница\0067\Out.txt&quot;</code></pre></div><p>P.S. Может быть, можно было и проще, скажем — одними регулярными выражениями обойтись.</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Sun, 28 Aug 2011 23:09:05 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=50926#p50926</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBScript: Как отформатировать текстовый файл в нужный формат]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=50922#p50922</link>
			<description><![CDATA[<p>Кодировка win1251, но это значения не имеет. Могу сделать любую.</p><p>Вот пример:<br /></p><div class="codebox"><pre><code>АГРАРИЙ ООО
347401, Россия, Ростовская обл., Дубовский р-н, хут. Гуреев
Руководителю

АГРАРНИК ООО
306455, Россия, Курская обл., Черемисиновский
р-н, п/о Новосавинское, д. Садовка
Руководителю

АГРАРИЙ, СЕЛЬСКОХОЗЯЙСТВЕННАЯ 
АРТЕЛЬ ООО
396753, Россия, Воронежская обл., Богучарский р-н, с.Твердохлебовка
Руководителю

АГРАРИЙ СЕЛЬСКОХОЗЯЙСТВЕННАЯ 
АРТЕЛЬ
396753, Россия, Воронежская обл.,Богучарский
р-н, хут. Белый Колодезь, ул. Советская, 5
Руководителю</code></pre></div><p><strong>Первый вариант правильный, остальные не правильные.</strong></p><p>Логически я бы описал работу скрипта следующим образом (не вдаваясь в кодинг):<br />1. Найти пустую строку A, найти строку содержащую шесть цифр подряд B, если между строкой A и B больше одной строки, совместить их в одну строку.<br />2. Найти строку содержащую шесть цифр подряд C, найти пустую строку D, если между строкой C и D больше двух строк, совместить их в одну, не трогая последнюю.</p>]]></description>
			<author><![CDATA[null@example.com (kdesys)]]></author>
			<pubDate>Sun, 28 Aug 2011 18:34:48 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=50922#p50922</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBScript: Как отформатировать текстовый файл в нужный формат]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=50921#p50921</link>
			<description><![CDATA[<p><strong>kdesys</strong>, выложите сюда, пожалуйста, небольшой образец, включающий в себя все три «неправильных» вида и хотя бы один «правильный», оформив его текст <a href="http://forum.script-coding.com/help.php#bbcode">тэгом «code»</a>. Да, и какая кодировка текстового файла?</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Sun, 28 Aug 2011 12:19:06 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=50921#p50921</guid>
		</item>
		<item>
			<title><![CDATA[VBScript: Как отформатировать текстовый файл в нужный формат]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=50920#p50920</link>
			<description><![CDATA[<p>Здравствуйте.</p><p>Имеется огромный список адресов в текстовом виде, большинство адресов соответствует виду:</p><p>НАИМЕНОВАНИЕ ОРГАНИЗАЦИИ<br />ИНДЕКС, АДРЕС<br />Руководитель</p><p>но, около 30% адресов имеют вид:</p><p>ДЛИННОЕ<br />НАИМЕНОВАНИЕ<br />ОРГАНИЗАЦИИ<br />ИНДЕКС, АДРЕС<br />Руководитель</p><p>или:<br />НАИМЕНОВАНИЕ ОРГАНИЗАЦИИ<br />ИНДЕКС, ДЛИННЫЙ<br />АДРЕС<br />Руководитель</p><p>или:<br />ДЛИННОЕ<br />НАИМЕНОВАНИЕ<br />ОРГАНИЗАЦИИ<br />ИНДЕКС, ДЛИННЫЙ<br />АДРЕС<br />Руководитель</p><p>Необходимо всё привести к виду:</p><p>НАИМЕНОВАНИЕ ОРГАНИЗАЦИИ<br />ИНДЕКС, АДРЕС<br />Руководитель</p><p>К чему можно привязаться:<br />1. Каждый контрагент разделён пустой строкой<br />2. Индекс начинается только с цифр 1,2,3,4 и 6<br />3. Руководитель - это текст &quot;Руководитель&quot;</p>]]></description>
			<author><![CDATA[null@example.com (kdesys)]]></author>
			<pubDate>Sun, 28 Aug 2011 09:59:33 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=50920#p50920</guid>
		</item>
	</channel>
</rss>
