 Källkoden för /anders.enges/vb/vbtips8.asp
 Källkoden för /anders.enges/vb/vbtips8.asp 
<!--#include file="../inc/navstuff.asp" -->
Används för att jämföra ord. Inte efter hur de skrivs utan efter HUR DE LÅTER.<br>
<br>
Användning:<br>
<br>
Namn1 och Namn2 antas innhålla t.ex. personnamn<br>
Soundex(Namn1) = Soundex(Namn2)<br>
ger <B>True</B> om namnen är Smith och Smyte<br>
ger <B>True</B> om namnen är Christer och Krister<br>
ger <B>False</B> om namnen är Karin och Krister<br>
ger <B>True</B> om orden är Banan och Panaani<br>
ger <B>False</B> om orden är Banan och Pataani<br>
<br>
<div class=code> 
    <p>Function Soundex (ByVal sText)<br>
           Dim sOrd As String<br>
           Dim sNummer As String<br>
           Dim sSdx As String<br>
           Dim sAktuell As String<br>
           Dim sFörraAs String<br>
           Dim iVarv As Integer<br>
           Dim sTecken As Integer<br>
           Dim iAscii As Integer<br>
        <br>
           sOrd = UCase(sText)    ' bara stora bokstäver<br>
           sNummer = "01230120022455012623010202"   ' 
        SOUNDEX tabell <br>
                       ' 
        se till att ni skriver in den rätt!!!!<br>
           ' Egentligen säger SOUNDEX algoritmen att det skall<br />
           ' vara som nedan<br>
           ' sSdx = Left(sOrd, 1)   ' Starta med första 
        tecknet<br>
           ' For iVarv = 2 To Len(sOrd)   ' Loopa igenom 
        resten av strängen<br>
           ' ...<br>
           ' Men om det första tecknet är tex Å fungerar följande<br />
           ' variant mycket bättre<br>
           sSdx = ""    ' Starta med ingenting<br>
           For iVarv = 1 To Len(sOrd)   ' Loopa igenom 
        strängen<br>
              sTecken = Mid(sOrd, iVarv, 1)   ' 
        tag ett tecken<br />
              ' konvertera ASCII värdet till SOUNDEX 
        tabellenindex <br>
              iAscii = Asc(sTecken) - 64   <br>
              If iAscii >= 1 And iAscii <= 26 
        Then ' acceptera endast tecken<br />
                ' slå upp det i SOUNDEX tabellen <br>
                 sAktuell = Mid(sNummer, 
        iAscii, 1) <br>
                 If sAktuell <> 
        sFörra And sAktuell <> "0" Then <br>
                    ' 
        om olika och inte specialtecken<br>
                    sFörra 
        = sAktuell ' spara förra värdet<br>
                    sSdx 
        = sSdx + sAktuell ' bygg upp resultatsträngen<br>
                 End If<br>
              End If<br>
           Next Varv<br>
           ' Se till att vi får fyra tecken totalt.<br>
           Soundex = Left(sSdx + "0000", 4)<br>
        End Function<br>
    </p>
    </div>
<!--#include file="../inc/footer.asp" -->