I have used this function a couple of times and now I have an exercise which I can not even run. I have a string ( cadena
) and a dictionary ( griegoDicc
), I need to replace each Greek character with the numeric value.
But "result" is equal to "string", it does not perform the replacement. Will anyone know why this happens?
package main
import (
"log"
"strings"
)
func main() {
cadena := "ΨφΔξβΨμλΓΛ ΡΘξΡΛξΠμφ λΨξΘΓΠμΓΔ ΨξΛφζΡμλΓ ΔξΛφζΡμλΓ ΔξΛφζΡμλΓ ΔξΨφΔξΡΛξ μηφΔΨξΔΡξ μΨλΓΘξαΓΔ ΡΩΓΘξΣΡΔξ ΡΩξλμΨΩΨξ ΓξΛΓξΩΨζΛ ΡξφΠηΓΛΔΓ ΔξΦΓξΘηξλ μΨΩΨξΔφΠΩ φΘφβΨξΓζμ φΡμΨΩξΛΓΘ ξΞμΨΣφΩαφ ΓΘξηΩφΔΓΘ ξΔΡΛξΘηΔξ ΦξΛΨΘξΛφζ μΡΘξΔΡΛξβ ηΩΔΨξμΡΘΞ ΨΩΔΡΩξΓΛξ ΠμΓΩξΞηΡζ ΛΨξΓμΠΡΩλ φΩΨξΘΓΛηΔ ξΓΛξΠμΓΩξ ΞηΡζΛΨξΓμ ΠΡΩλφΩΨξΘ ΓΛηΔξΦξΛΨ ΘξΛφζμΡΘξ ΔΡΛξβηΩΔΨ ξμΡΘΞΨΩΔΡ ΩξΓΛξΠμΓΩ ξΞηΡζΛΨξΓ μΠΡΩλφΩΨξ ΘΓΛηΔξΦξΛ ΨΘξΛφζμΡΘ ξΔΡΛξβηΩΔ ΨξμΡΘΞΨΩΔ ΡΩξΓΛξΠμΓ ΩξΞηΡζΛΨξ ΓμΠΡΩλφΩΨ ξΘΓΛηΔξαΨ μΨξΘΡΓΩξΡ λΡμΩΨΘξΛΨ ΘξΛΓημΡΛΡ ΘξϑηΡξΘηΞ φβΨΘξαΨΩΘ ΡΠηφμξϑηΡ ξΘηΞφβΨΘξ αΨΩΘΡΠηφμ ξαΨμΨΩΓΔΨ ΘξΔΡξΠΛΨμ φΓξΣφΣΓβΨ ΘξΨξεημΡβ ΨΘξαΨΩξΠΛ ΨμφΓξβΨμφ μξΨξεημΡβ ΨΘξαΨΩξΠΛ ΨμφΓξβΨμφ μξΨξεημΡβ ΨΘξαΨΩξΠΛ ΨμφΓξβΨμφ μ"
// caracteres := "ΨφΔξβμλΓΛΡΘΠζηαΩΣΦΞϑε "
var resultado string
griegoDicc := [][]string{{"Ψ", "700"}, {"φ", "500"}, {"Δ", "4"}, {"ξ", "60"}, {"β", "2"}, {"μ", "40"}, {"λ", "30"}, {"Γ", "3"}, {"Λ", "30"}, {"Ρ", "100"}, {"Θ", "9"}, {"Π", "80"}, {"ζ", "7"}, {"η", "8"}, {"α", "1"}, {"Ω", "800"}, {"Σ", "200"}, {"Φ", "500"}, {"Ξ", "60"}, {"ϑ", "9"}, {"ε", "5"}}
for _, equivalencia := range griegoDicc {
resultado = strings.Replace(cadena, equivalencia[0], equivalencia[1], -1)
}
log.Print(resultado)
}