• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Leerzeichenbereinigung bei inputs?

keogarl

Geocacher
Hatte schon paarmal den Fall: Wig-spieler haben bei Text-Input Probleme, und wie sich hinterher herausstellte durch unnötige Leerzeichen. Meist passiert das, wenn man beim Smartphon die Autovervollständigung der Tastatur aktiviert hat. Die fügt dem gewählten Wort oft automatisch ein Leerzeichen hinten an.
Gibt es da evtl. ein script, das eine Eingabe von unnötigen Leerzeichen bereinigt? (am Anfang, am Ende und doppelte)

k.
 

Charlenni

Geomaster
Ich würde einfach alle Leerzeichen löschen. Dann gibt es keine Problem mit einem zuviel.

Um alle Leerzeichen in der Variable "s" zu löschen einfach

Code:
s = s:gsub(" ", "")
aufrufen. Und wenn man auch noch alle "." löschen will, weil z.B. manche "ETA Hoffmann" statt "E. T. A. Hoffmann " schreiben, dann

Code:
s = s:gsub(" ", ""):gsub("%.", "")
Und dann ganz sicher

Code:
s = string.upper(s:gsub(" ", ""):gsub("%.", ""))
Damit wird dann aus " E.TA . HoFFmaNn " oder aus " eta. hoFfMann "ein "ETAHOFFMANN" auf das man dann gut überprüfen kann.

Ich habe mal die Matching-Funktion ausgelassen. Da bin ich mir nicht sicher, ob die auf dem iPhone Player läuft. Da war mal was :???: . Ansonsten geht natürlich auch

Code:
s = s:gsub("[^a-zA-Z]", "")
welche alle Nicht-Buchstaben (Zeichen außer a-z und A-Z) rausschmeißt.

Wenn Du das interaktiv versuchen möchtest, dann geh' doch auf http://www.tutorialspoint.com/execute_lua_online.php. Dort kannst Du dann nach belieben mit Lua Code hantieren. Nur alle Wherigo-Sachen fehlen dann.
 
OP
keogarl

keogarl

Geocacher
Charlenni schrieb:
Ich würde einfach alle Leerzeichen löschen.
ja noch besser, cool :D

kannst du bitte nochmal genau sagen, wie ich den Code einbaue in Urwigo?
hab grad probiert: bei "on get input" vor dem "if/else" habe ich "lua user code" mit deinem Code eingefügt. da kam: Ooops..error
sorry, das mit dem Lua blick ich immer noch nicht..

sind Umlaute "Nicht-Buchstaben"? :roll:

Danke
 

Charlenni

Geomaster
Ich habe dir mal einen Screenshot angehängt. Wichtig ist, dass die Antwort in der Oberfläche als "Antwort" oder "Answer" angezeigt wird, aber im Lua-Code später "input" heißt. Also

Code:
input = input:gsub(" ", "")
für die Leerzeichen. und alles groß wäre dann

Code:
input = string.upper(input:gsub(" ", ""))
 

Anhänge

  • Input.PNG
    Input.PNG
    28,8 KB · Aufrufe: 973
Oben