'Primer 12: e-mail adresa (funkcije za rad sa niskama). Linearna (sekvencijalna) pretraga niza 'Korisnik se prijavljuje za e-mail adresu. Domeni koji su mu na raspolaganju su: 'yahoo.com, hotmail.com, gmail.com. Korisnik treba da unese zeljenu adresu, posle cega 'procedura proverava da li je nadimak duzine izmedju 4 i 8 karaktera, da li je 'sastavljen iskljucivo od malih slova i da li je domen jedan od onih dozvoljenih Sub eadresa() Dim adresa As String, nadimak As String, domen As String Dim domeni(3) As String Dim majmunce As Integer 'pozicija znaka '@' u adresi Dim sPoruka As String domeni(1) = "yahoo.com" domeni(2) = "hotmail.com" domeni(3) = "gmail.com" 'Ulaz sPoruka = "Nadimak mora biti duzine izmedju 4 i 8 karaktera." & vbNewLine sPoruka = sPoruka & "Nadimak ne sme da sadrzi velika slova." & vbNewLine sPoruka = sPoruka & "Domen mora biti jedan od:" & vbNewLine sPoruka = sPoruka & vbTab & "yahoo.com" & vbNewLine sPoruka = sPoruka & vbTab & "hotmail.com" & vbNewLine sPoruka = sPoruka & vbTab & "gmail.com" & vbNewLine adresa = InputBox(sPoruka, "Unesite zeljenu adresu") 'Obrada i izlaz majmunce = InStr(adresa, "@") If majmunce = 0 Then MsgBox "Nepravilna adresa (@ je obavezan)" Else nadimak = Left(adresa, majmunce - 1) domen = Right(adresa, Len(adresa) - majmunce) If LCase(nadimak) <> nadimak Then MsgBox "Nadimak " & nadimak & " nije sastavljen samo od malih slova" ElseIf Len(nadimak) < 4 Or Len(nadimak) > 8 Then MsgBox "Nadimak " & nadimak & " nije duzine izmedju 4 i 8 karaktera (ukljucujuci i 4 i 8)" ElseIf Not linearnaPretraga(domeni, 3, domen) Then MsgBox "Domen " & domen & " nije jedan od dozvoljenih" Else MsgBox "Adresa je OK, prihvata se" End If End If End Sub 'vrednost funkcije je True ili False u zavisnosti od toga da li niz od n elemenata 'sadrzi vrednost x kao svoj element. Pretraga se vrsi neposrednim uporedjivanjem 'svakog elementa niza sa vrednoscu koja se trazi Function linearnaPretraga(niz() As String, n As Integer, x As String) As Boolean Dim nadjen As Boolean Dim i As Integer nadjen = False i = 1 While (Not nadjen) And (i <= n) If niz(i) = x Then nadjen = True End If i = i + 1 Wend linearnaPretraga = nadjen End Function