Lua-Aufgabe 43: x entfernen

!!! Please ensure, that your contribution or question is placed into the relevant section !!!
Questions about rolling stock, for example, do not belong in "Questions about the Forum". Following is perhaps the right area where your question will be better looked after:
General questions to EEP , Splines, rolling stock, Structures in EEP, landscape elements, Signalling system and controlling, designers, Europe-wide EEP meetings , Gossip
Your cooperation to keep the forum clear is appreciated.
  • Aufgabe:

    Entferne aus dem gegebenen String str jedes klein geschriebene x, ausgenommen einem x am Anfang oder Ende.


    Beispiele:

    entferne_X("xxZxuxgx") -> "xZugx"

    entferne_X("abxxxcd") -> "abcd"

    entferne_X("xabxxxcdx") -> "xabcdx"



    LUA Source Code
    1. function entferne_X(str)
    2. end

    Ergänze die obige Funktion so, dass sie aus dem Stringstr alle klein geschriebenen x entfernt. Ausgenommen ist ein x an erster oder letzter Stelle des Strings.




    Setze deine Funktion statt der ersten drei Zeilen in folgendem Testskript ein und lasse es in einem Lua Interpreter oder einer leeren EEP Anlage laufen um deine Funktion zu überprüfen.

  • Ausführlich:


    Oder etwas kompakter:

    LUA Source Code
    1. function entferne_X(str)
    2.     local l = str:len()
    3.     if l > 2 then
    4.         return str:sub(1, 1)..(str:sub(2, l - 1):gsub("x", ""))..str:sub(l, l)
    5.     else
    6.         return str
    7.     end
    8. end

    Viele Grüße Ralf

    -----------------------

    EEC, EEP 2.43 - 6, EEP 9 - 13, EEP 14, EEP 15.1

    Hugo + Tauschmanager + Modellkatalog + Modellkonverter + Bilderscanner

  • Etwas umständlicher:

    Fried-liche Grüße:aq_1:


    Laptop: i7-4710HQ 2,5GHz, 8GB RAM, Intel HDGraphics 4600, NVIDIA GeForce GTX860M, Windows 10 Pro 1803 64bit

    EEP: (7, 10, 12 alle Basic), 14.1 Expert Plugin1, 15 Expert Patch 3, ModellKatalog, TauschManager, Modell-Explorer


    Rentner sein ist wie Urlaub, nur 365 Tage im Jahr!