Posto che anche io non capisco l'utilità di tutto ciò secondo me coi dizionari risolvi:
Inserisci un modulo nel tuo progetto (se non ne hai già uno) e inserisci questo codice:
codice:
Public dictionary As New Dictionary(Of String, Integer)
Public Sub popolaDizionario()
dictionary.Add("a", 1)
dictionary.Add("b", 2)
dictionary.Add("c", 3)
dictionary.Add("d", 4)
dictionary.Add("e", 5)
dictionary.Add("f", 6)
dictionary.Add("g", 7)
dictionary.Add("h", 8)
dictionary.Add("i", 9)
dictionary.Add("l", 10)
dictionary.Add("m", 11)
dictionary.Add("n", 12)
dictionary.Add("o", 13)
dictionary.Add("p", 14)
dictionary.Add("q", 15)
dictionary.Add("r", 16)
dictionary.Add("s", 17)
dictionary.Add("t", 18)
dictionary.Add("u", 19)
dictionary.Add("v", 20)
dictionary.Add("z", 21)
End Sub
Public Function convertiLettInNum(ByVal mioTesto As String) As Integer
Dim output As String = ""
Dim str As [String] = mioTesto
'Ciclo su tutti i caratteri della stringa
For Each carattere As Char In str
Dim num As Integer = dictionary.Item(lcase(carattere))
output &= num
Next
Return output
End Function
In questo modo ovunque tu sia nel tuo progetto puoi ottenere il tuo valore richiamando la funzione convertiLettInNum.
Per esempio al click di un bottone:
codice:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
MsgBox(convertiLettInNum(tuaStringa))
End Sub
Tieni conto che il tutto funziona solo se nel dizionario ci son i caratteri che la stringa contiene quindi se non vuoi incappare in errori puoi usare le condizioni IF prima della valorizzazione della variabile "num" che controllino che il carattere esiste nel dizionario!
Ovviamente quando cerco la key del carattere ho usato LCase perchè io ho messo tutte lettere minuscole (visto che il tutto è case sensitive) mentre presumo che tu voglia sempre 1 come risultato sia che metta "a" o "A".
Se invece non vuoi niente di "lineare" (quindi la A=1, la B=2 ecc) puoi usare l'ASCII come ti hanno consigliato ma non fare la somma matematica ma sommai caratteri numerici nella stringa!
Ciao ciao :P