Frozen Blade
Frozen Blade

Reputation: 11

Vb.Net Converting Greek Strings Into English

Im building an information gathering program and some Computers like my cousin's are in greek so the name is greek. I run this

 Dim Name As String = Environment.UserName.ToString

And i get "Μητσος" Which is greek letters. Any idea of what i need to convert this string? I built by myself this function but it seems not to work.

Public Function ConvertToEnglish(ByVal Namee As String)
    Dim GreekName As String = Namee.ToString
    If GreekName.Contains("α") Or GreekName.Contains("Α") Then
        GreekName.Replace("α", "A")
        GreekName.Replace("Α", "A")
    End If
    If GreekName.Contains("β") Or GreekName.Contains("Β") Then
        GreekName.Replace("β", "B")
        GreekName.Replace("Β", "B")
    End If

    If GreekName.Contains("γ") Or GreekName.Contains("Γ") Then
        GreekName.Replace("γ", "G")
        GreekName.Replace("Γ", "G")
    End If

    If GreekName.Contains("δ") Or GreekName.Contains("Δ") Then
        GreekName.Replace("δ", "D")
        GreekName.Replace("Δ", "D")
    End If
    If GreekName.Contains("ε") Or GreekName.Contains("Ε") Then
        GreekName.Replace("ε", "E")
        GreekName.Replace("Ε", "E")
    End If
    If GreekName.Contains("ζ") Or GreekName.Contains("Ζ") Then
        GreekName.Replace("ζ", "Z")
        GreekName.Replace("Ζ", "Z")
    End If
    If GreekName.Contains("η") Or GreekName.Contains("Η") Then
        GreekName.Replace("η", "I")
        GreekName.Replace("Η", "I")
    End If
    If GreekName.Contains("θ") Or GreekName.Contains("Θ") Then
        GreekName.Replace("θ", "TH")
        GreekName.Replace("Θ", "TH")
    End If
    If GreekName.Contains("ι") Or GreekName.Contains("Ι") Then
        GreekName.Replace("ι", "I")
        GreekName.Replace("Ι", "I")
    End If
    If GreekName.Contains("κ") Or GreekName.Contains("Κ") Then
        GreekName.Replace("κ", "K")
        GreekName.Replace("Κ", "K")
    End If
    If GreekName.Contains("λ") Or GreekName.Contains("Λ") Then
        GreekName.Replace("λ", "L")
        GreekName.Replace("Λ", "L")
    End If
    If GreekName.Contains("μ") Or GreekName.Contains("Μ") Then
        GreekName.Replace("μ", "M")
        GreekName.Replace("Μ", "M")
    End If
    If GreekName.Contains("ν") Or GreekName.Contains("Ν") Then
        GreekName.Replace("ν", "N")
        GreekName.Replace("Ν", "N")
    End If
    If GreekName.Contains("ξ") Or GreekName.Contains("Ξ") Then
        GreekName.Replace("ξ", "KS")
        GreekName.Replace("Ξ", "KS")
    End If
    If GreekName.Contains("ο") Or GreekName.Contains("Ο") Then
        GreekName.Replace("ο", "o")
        GreekName.Replace("Ο", "o")
    End If
    If GreekName.Contains("π") Or GreekName.Contains("Π") Then
        GreekName.Replace("π", "P")
        GreekName.Replace("Π", "P")
    End If
    If GreekName.Contains("ρ") Or GreekName.Contains("Ρ") Then
        GreekName.Replace("ρ", "R")
        GreekName.Replace("Ρ", "R")
    End If
    If GreekName.Contains("σ") Or GreekName.Contains("Σ") Then
        GreekName.Replace("σ", "S")
        GreekName.Replace("Σ", "S")
    End If
    If GreekName.Contains("τ") Or GreekName.Contains("Τ") Then
        GreekName.Replace("τ", "T")
        GreekName.Replace("Τ", "T")
    End If
    If GreekName.Contains("υ") Or GreekName.Contains("Υ") Then
        GreekName.Replace("υ", "Y")
        GreekName.Replace("Υ", "Y")
    End If
    If GreekName.Contains("φ") Or GreekName.Contains("Φ") Then
        GreekName.Replace("φ", "F")
        GreekName.Replace("Φ", "F")
    End If
    If GreekName.Contains("χ") Or GreekName.Contains("Χ") Then
        GreekName.Replace("χ", "X")
        GreekName.Replace("Χ", "X")
    End If
    If GreekName.Contains("ψ") Or GreekName.Contains("Ψ") Then
        GreekName.Replace("ψ", "PS")
        GreekName.Replace("Ψ", "PS")
    End If
    If GreekName.Contains("ω") Or GreekName.Contains("Ω") Then
        GreekName.Replace("ω", "W")
        GreekName.Replace("Ω", "W")
    End If


    Return GreekName.ToString
End Function

Upvotes: 0

Views: 471

Answers (1)

thomasb
thomasb

Reputation: 6035

Replace is not an "in-place" replacement, but returns a value. You have to assign the return value to the variable.

GreekName = GreekName.Replace("ω", "W")

Note that you don't have to test the existence of the replaced character beforehand. If the character is not found, it just does nothing.

Upvotes: 3

Related Questions