Regex Tutorial für Leute die es einfach nicht verstehen

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von PascalN.

    Regex Tutorial für Leute die es einfach nicht verstehen

    Hallo,
    Ich habe jetzt schon unzählige Regex Tutorials gesehen , wo Regex so schwer und komplitziert dargestellt & erklärt wird , so dass es keiner Lernen will / kann.
    Ich selber habe Regex von einem Freund von mir der bei Microsoft programmiert , gelernt , und zwar in 4 Tagen vollständig!

    Das kombinieren ist das schwerste daran , die Bedeutungen der Regex Zeichen sind leicht zu erlernen.

    Ich will nicht lang rumreden das ihr nicht soviel Lesen müsst also los gehts.

    Die meisten denken (.+?) ist Regex , ist es aber nicht.


    Hier mal die Zeichen & ihre Bedeutungen:


    a-z , findet alle Kleinbuchstaben von a-z


    A-Z , findet alle Großbuchstaben von A-Z


    0-9 findet alle Zahlen von 0-9 , hierbei kann man auch beispielsweise 1-4 machen dann findet er alle Zahlen von 1-4.


    \d findet ebenfalls alle Zahlen von 0-9.


    . findet Alle Zeichen (Alle Zahlen , Groß/Klein Buchstaben sowie Sonderzeichen)
    Beispiel : 38abBz§3849% würde mit .+ oder .* komplett markiert werden.


    * findet entweder kein, ein oder mehrere Zeichenfolgen vom voranstehenden Zeichen.
    Beispiel : aaab , dabei würden die 3 a mit a* oder a+ markiert werden.


    + ungefähr dasselbe wie * , findet entweder kein , ein oder mehrere Zeichenfolgen vom voranstehenden Zeichen.


    {min,max} findet das minimale bis maximale Vorkommen aufeinanderfolgende des voranstehenden des Zeichens.
    Beispiel : aaab , dabei würden die 3 a mit a{3} markiert werden ( weil es 3x a gibt ).
    Beispiel : a{3,4} bedeutet das 3 oder 4 a aufeinander folgen.
    Beispiel: a{3,} bedeutet das 3 oder mehr a aufeinander folgen.



    ( ) ist für die Reihenfolge der Auswertung zu bestimmen.
    *, ?, +, oder {min,max} auf eine Folge von Zeichen und nicht nur auf ein Zeichen anzuwenden.
    (abc)+ z.B. findet ein oder mehrere aufeinanderfolgenden Vorkommen von "abc"; so findet es abcabc123, aber nicht ab123 oder bc123.


    [ ] beschreibt Zeichenfolgen , dh. was im ZielText vorkommen darf oder auch nicht.
    Beispiel : value=34455 dabei würde value=[\d] , die erste Zahl ( sprich 3 ) markieren.
    Beispiel : value=34455 dabei würde value=[\d+] , value=alle Zahlen , markieren wegen dem +
    Beispiel : value="34455" dabei würde value="([^"]+) , nur die Zahlen zwischen den "" markieren.


    | bedeutet einfach nur Alternativ. baum|auto heißt also es wird baum oder auto markiert , oder beide.
    Beispiel : baumauto , dabei würde auto|baum , alle beiden Wörter markieren.

    Jetzt habt ihr Beispielsweise den Link hier, ihr wollt das wcf/icon/editS.png haben.

    HTML-Quellcode

    1. <a href="http://www.vb-paradise.de/index.php?form=UserProfileEdit"><img src="wcf/icon/editS.png" alt="" /> <span>Profil bearbeiten</span></a></li>


    Regex :
    img src="([^"]+)

    Erläuterung :
    img src=" schreibt ihr damit Regex weiss wo es suchen soll.
    () weil ihr die Reihenfolge haben wollt.
    [] ist die Zeichenkette
    ^" ihr wollt ja alles ausser hinten das "
    + damit alles was zwischen " " steht außer halt "



    Bitte um Kritik , Verbesserungsvorschläge etc.


    Mfg Kevin.

    Dieser Beitrag wurde bereits 8 mal editiert, zuletzt von „Gutelaunetyp“ ()

    du erklärst den . das * und das Fragezeichen->das ist sehr wohl ein Regulärer Ausdruck, evtl. solltest du dir mal die Allgemeine Bedeutung davon bewusst machen...

    und ich würde sagen, niemand kann RegEx wirklich vollständig...
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---
    Als Anfang finde ich es recht gut, um mal die allernötigsten Grundlagen, einfach zu erlernen :thumbup:
    Somit fallen einem sicherlich auch die grossen, detaillierteren Tutorials leichter.

    Wäre etwas für ins Tipps & Tricks Forum!



    Grüsse
    Pascal

    timi257 schrieb:

    Also wenn das vollständig ist, dann frag ich mich, wofür man da 4 Tage braucht - 10 Minuten und ich bin durch :P

    timi257 schrieb:

    Das ist mir klar - ich kann RegEx einigermaßen gut, aber

    Gutelaunetyp schrieb:

    Hallo,
    Ich selber habe Regex von einem Freund von mir der bei Microsoft programmiert , gelernt , und zwar in 4 Tagen vollständig!


    Das ist SICHER NICHT VOLLSTÄNDIG!!!! :cursing:

    Wie jvbsl schon meinte..
    Ich glaube kaum, dass jemand RegEx vollständig KANN oder VERSTEHT!
    Aber ein guter Anfang ist es sicher, um die Grundausdrücke von RegEx darzustellen.

    Grüsse
    Pascal