Ich möchte eine Zeichenfolge in ein Array geteilt durch mehrere Trennzeichen teilen.Wie teile ich eine Zeichenfolge mit mehreren Trennzeichen in lua?
local delim = {",", " ", "."}
local s = "a, b c .d e , f 10, M10 , 20,5"
Ergebnis Tabelle sollte wie folgt aussehen:
{"a", "b", "c", "d", "e", "f", "10", "M10", "20", "5"}
Trennzeichen können weiße Leerzeichen, Kommas oder Punkte sein. Wenn zwei Trennzeichen wie ein Leerzeichen und ein Komma aufeinander folgen, sollten sie zusammengelegt werden, zusätzliche Leerzeichen sollten ignoriert werden.
Kann die schließende Klammer ']', Prozent '%' und der Strich '-' zu den benutzerdefinierten Begrenzern gehören? –
Ich verwende normalerweise diese Funktion, um solche Probleme zu vermeiden: function escape_magic (s) lokal MAGIC_CHARS_SET = '[() %%. [^ $%] * +% -?]' wenn s == Nil dann Ende zurück (s: gsub (MAGIC_CHARS_SET, '%%% 1')) Ende – tonypdmtr
@EgorSkriptunoff, guter Punkt. – lhf