Reguläre Ausdrücke (REGEXP)

Willkommen in der Transport Fever Community

Welcome to the fan community of Transport Fever and Train Fever, the economic simulators of Urban Games. The community is free for you to share and inform yourself about the game. We cultivate a friendly and objective interaction with each other and our team will be happy to answer any questions you may have.

 

Registration and use is of course free for you.

 

We wish you a lot of fun and hope for active participation.

The Team of the Transport-Fever Community

  • Reguläre Ausdrücke werden in TPF2 verwendet, um eigene Label-Filter zu erstellen.

    Hier eine Übersicht, welche Zeichen was bedeuten:


    1 Übersicht Ausdrücke


    ZeichenFunktion / BeschreibungBeispiel
    .genau ein beliebiges Zeichen
    -für Bereichsangaben
    Ist das Minus-Zeichen direkt gemeint und steht nicht am Anfang einer regexp muss ein \ vorangestellt werden: \-
    [A-Z]
    \Hebt die (Meta-)Funktion eines Zeichens auf\.
    \-
    ^Anfang einer Zeichenkette
    in [ ] negiert es die Aussage: [^a-z] = keine Kleinbuchstaben
    ^a
    [^a-z]
    $Ende einer Zeichenkette$a
    |Alternativen[a-z]|[0-9]
    +Zeichen vor dem Plus muss mindestens einmal bis beliebig oft vorkommena+
    *Zeichen vor dem Sternchen kann 0 mal bis beliebig oft vorkommena*
    ?Zeichen vor dem ? muss 0 bis 1 mal vorkommena?
    {min,max}
    {anzahl}
    Häufigkeit von min bis max: {1,3} = 1-3 mal
    bzw. genaue Anzahl: {2} = muss genau 2 mal vorkommen
    \d{1,3}
    \d{2}
    [ ]genau ein Zeichen, was zw. den Klammern steht
    [abc] sucht also nach a, b oder c, nicht nach abc
    [A-Z]
    ( )Klammern zum Zusammenfassen eines Ausdrucks (wie in der Mathematik): ^(abc)|(xyz) = abc oder xyz am Anfang einer Zeichenkette^(abc)|(xyz)
    \dgenau eine Ziffer [0-9] (d wie Digit)\d
    \Dein Zeichen, das keine Ziffer ist, also [^\d]\D
    \wgenau ein Buchstabe, eine Ziffer oder der Unterstrich, also [a-zA-Z_0-9]
    (und evtl. weitere Buchstaben, z. B. Umlaute)
    \w
    \Wein Zeichen, das weder Buchstabe noch Zahl noch Unterstrich ist, also [^\w]\W
    Whitespace; meistens die Klasse der Steuerzeichen \f, \n, \r, \t und \v\s
    \Sein Zeichen, das kein Whitespace ist [^\s]\S
    \bleere Zeichenkette am Wortanfang oder am Wortende (erkennt Anfang eines Wortes)\b
    \Bleere Zeichenkette, die nicht den Anfang oder das Ende eines Wortes bildet\B
    \<leere Zeichenkette am Wortanfang\<
    \>leere Zeichenkette am Wortende\>





    2 Beispiele


    2.1 Erweiterte Liniennummernanzeige


    Folgender Code erlaubt die einen der folgenden Buchastaben: A E M N S U X vor einer Liniennummer sowie einen der Buchstaben A B C D E hinter der Liniennummer.
    Damit sollten die Gängigsten Liniennummern erkannt werden aber andere Kombinationen weggefiltert werden.

    Lua
    filter = "CUSTOM", 
    params = { expr = "([AEMNSUX]?[0-9]+[ABCDE]?).*$", replace = "\\1", },

    Erkennt z.B. S1 U3 M17 X54 aber auch 12E




    3 Links / Quellen


    Deutsche Erklärung und Beispiele zu den Bedeutungen:
    https://www.webmaster-seo.com/de/regexp


    Zum Testen der erstellten RegExp:
    https://regex101.com/


    Die wohl nach Urban Games zugrundeliegende Referenz auf Englisch:
    https://www.gnu.org/software/s…/Regular-Expressions.html

Share