<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; VBS: транслитерация строки по ГОСТ 7.79 2000]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=4994&amp;type=atom" />
	<updated>2010-10-03T07:11:24Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=4994</id>
		<entry>
			<title type="html"><![CDATA[VBS: транслитерация строки по ГОСТ 7.79 2000]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=39839#p39839" />
			<content type="html"><![CDATA[<p>Переписал это <a href="http://forum.script-coding.com/viewtopic.php?id=2384">http://forum.script-coding.com/viewtopic.php?id=2384</a> на VBS</p><div class="codebox"><pre><code>Dim tr, tl
tr=&quot;а б в г д е ё  ж  з и й  к л м н о п р с т у ф х  ц ч  ш  щ   ъ  ы ь э  ю  я  А Б В Г Д Е Ё  Ж  З И Й  К Л М Н О П Р С Т У Ф Х  Ц Ч  Ш  Щ   Ъ  Ы Ь Э  Ю  Я  &quot;
tl=&quot;аaбbвvгgдdеeёjoжzhзzиiйjjкkлlмmнnоoпpрrсsтtуuфfхkhцcчchшshщshhъ&#039;&#039;ыyь&#039;эehюjuяjaАAБBВVГGДDЕEЁJoЖZhЗZИIЙJjКKЛLМMНNОOПPРRСSТTУUФFХKhЦCЧChШShЩShhЪ&#039;&#039;ЫYЬ&#039;ЭEhЮJuЯJa&quot;

&#039;=============================================================================
&#039; функция транслитерации строки по ГОСТ 7.79 2000
Function translit(ByVal sIncoming)
    Dim pos, findpos, sSymbol
    
    translit=&quot;&quot;

    For pos = 1 To len(sIncoming) Step 1

        sSymbol=mid(sIncoming,pos,1)
        findpos=InStr(1, tr, sSymbol)
        If findpos=0 or sSymbol=&quot; &quot; Then
            &#039; ***** В транслитерации не нуждается
            translit=translit+sSymbol
        Else
            &#039; ***** Первый символ
            translit=translit+mid(tl,findpos+1,1)
            &#039; ***** Второй символ
            If mid(tr,findpos+2,1)=&quot; &quot; Then
                translit=translit+mid(tl,findpos+2,1)
                &#039; ***** Третий символ
                If mid(tr,findpos+3,1)=&quot; &quot; Then
                    translit=translit+mid(tl,findpos+3,1)
                End If
            End If
        End If
    Next
End Function</code></pre></div><p>Может пригодится кому.</p>]]></content>
			<author>
				<name><![CDATA[Высокий]]></name>
			</author>
			<updated>2010-10-03T07:11:24Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=39839#p39839</id>
		</entry>
</feed>
