{"id":181512,"date":"2026-02-19T15:13:47","date_gmt":"2026-02-19T14:13:47","guid":{"rendered":"https:\/\/liora.io\/de\/?p=181512"},"modified":"2026-02-19T15:13:47","modified_gmt":"2026-02-19T14:13:47","slug":"regex-regelmaessiger-ausdruck-was-ist-das-wie-benutzt-man-es","status":"publish","type":"post","link":"https:\/\/liora.io\/de\/regex-regelmaessiger-ausdruck-was-ist-das-wie-benutzt-man-es","title":{"rendered":"Regex (regelm\u00e4\u00dfiger Ausdruck): Was ist das? Wie benutzt man es?"},"content":{"rendered":"<h2>In der Welt der Computer m\u00fcssen wir oft Aufgaben erledigen, die mit Textverarbeitung zu tun haben. Es gibt ein universelles Werkzeug namens Regex, das oft die leistungsf\u00e4higsten L\u00f6sungen in diesem Bereich anbietet. Regul\u00e4re Ausdr\u00fccke sind jedoch weitgehend unbekannt, da sie manchmal etwas verwirrend aussehen.<\/h2>\n<h2>Was ist Regex?<\/h2>\n<p>Ein <strong>regul\u00e4rer Ausdruck, auch umgangssprachlich Regex<\/strong> genannt, ist auf den ersten Blick eine <strong>einfache Zeichenkette.<\/strong> Was unterscheidet ihn davon? Eine spezielle Syntax, die, wenn sie interpretiert wird, eine gr\u00f6\u00dfere Menge von Zeichenketten beschreibt.<\/p>\n<p>Diese beschreibende Zeichenkette wird als Muster oder Pattern bezeichnet.<\/p>\n<p>Es handelt sich nicht um eine <a href=\"https:\/\/liora.io\/de\/low-code-eine-einfache-programmiersprache-fuer-jedermann\">Programmiersprache<\/a> im eigentlichen Sinne: Fast alle Sprachen verf\u00fcgen \u00fcber eine <strong>Regex-Bibliothek,<\/strong> die die Verwendung von regul\u00e4ren Ausdr\u00fccken erm\u00f6glicht. Au\u00dferdem unterscheidet sich die Syntax der einzelnen Sprachen nur geringf\u00fcgig, was die Kompatibilit\u00e4t zwischen den verschiedenen Plattformen erheblich erleichtert, daher der eingangs verwendete Begriff &#8222;universell&#8220;.<\/p>\n<h2>Wozu dient ein Regex \/ regul\u00e4rer Ausdruck?<\/h2>\n<p>Du hast es vielleicht schon erraten: Mithilfe von<strong> Regexen<\/strong> k\u00f6nnen wir eine bestimmte Art von <a href=\"https:\/\/liora.io\/de\/tf-idf\">Text isolieren und mit den entnommenen Proben<\/a> eine spezielle Verarbeitung durchf\u00fchren.<\/p>\n<p>Der einfachste Fall ist, ein Wort in einem Dokument durch ein anderes zu ersetzen. Wir k\u00f6nnen unsere Toleranz auch verringern, indem wir bestimmte Abweichungen zulassen. Nachfolgend ein Beispiel:<\/p>\n<p style=\"text-align: center\"><strong><em>Dieser Code findet Vorkommen des Ausdrucks &#8222;regex&#8220; und seiner Varianten im Absatz und ersetzt sie durch &#8222;regul\u00e4re(n) Ausdruck(e)&#8220;.<\/em><\/strong><\/p>\n<p>Andere Verwendungen von Regexen gibt es in der <a href=\"https:\/\/liora.io\/de\/cybersicherheit-der-ultimative-ratgeber\">Cybersicherheit:<\/a> Wenn du ein Konto auf einer neuen Website erstellst, verlangt diese normalerweise ein Passwort, das eine Reihe von Regeln erf\u00fcllt. Um zu \u00fcberpr\u00fcfen, ob das Passwort, das du eingibst, nicht mit dem Vertrag in Konflikt steht, wird ein Regex angewendet. Ebenso muss bei der Eingabe einer g\u00fcltigen E-Mail-Adresse sichergestellt werden, dass das arobase vorhanden ist (um nur eine Einschr\u00e4nkung zu nennen); dies ist relativ einfach in Form von Regexen zu \u00fcbertragen.<\/p>\n<p>Schlie\u00dflich findet man Regexe auch in der maschinellen <a href=\"https:\/\/liora.io\/de\/nlp-language-translation-alles-was-du-wissen-musst\">Verarbeitung nat\u00fcrlicher Sprache (NLP),<\/a> beim Webscraping, bei der Mustererkennung usw. Diese Liste ist keineswegs vollst\u00e4ndig, und du wirst sehr wahrscheinlich ein Data Science-Problem l\u00f6sen m\u00fcssen, bei dem Regexe eine Rolle spielen!<\/p>\n<p><a href=\"https:\/\/liora.io\/de\/unsere-aus-und-weiterbildungen\"><br \/>\nData Weiterbildungen<br \/>\n<\/a><\/p>\n<h2>Ein sehr kontroverses Aussehen<\/h2>\n<p>Der<strong> obige Code ist vielleicht etwas gew\u00f6hnungsbed\u00fcrftig<\/strong>: Ohne Kenntnisse der Regex-Architektur ist es schwierig, ihn zu verstehen&#8230; Es ist dieser unverdauliche Aspekt, der diesem Werkzeug schadet, obwohl es alles andere als kompliziert zu beherrschen ist! Es gibt nur eine Handvoll Gesetze, die diese Syntax regeln, und wir werden versuchen, sie zu erl\u00e4utern.<\/p>\n<p>Betrachten wir den folgenden Ausdruck:<\/p>\n<p>[regex to determine a valid nickname (make a coloured and multiple part image)]<\/p>\n<p>Um festzustellen, wie eine <strong>Regex<\/strong> funktioniert, muss sie zun\u00e4chst in mehrere Untergruppen zerlegt werden. Das trifft sich gut, denn das Konzept der Gruppen existiert formal:<\/p>\n<ul>\n<li>Sie werden durch <strong>Klammern abgegrenzt<\/strong>.<\/li>\n<li>Einige Klammern sind nicht fesselnd (wie die, die mit einem Lookahead verbunden sind), aber in der Regel wird jede Gruppe in der Reihenfolge gez\u00e4hlt, in der die Klammer ge\u00f6ffnet wurde. Eine Gruppe kann durch die Eingabe des Zeichens &#8222;?:&#8220; am Anfang der Klammer gefangen werden oder nicht.<\/li>\n<li>Um es deutlicher zu sagen: Eine auffangende Gruppe ist eine <strong>Teilmenge<\/strong> des gesamten Musters, die bei der Suche nach einem Muster isoliert werden kann.<\/li>\n<li>Das Zirkumflexzeichen &#8222;^&#8220; am Anfang einer Liste ist ein Sonderzeichen; es bedeutet, dass der <strong>regul\u00e4re Ausdruck<\/strong> nur die Vorkommen am Anfang der Zeile erfasst.<\/li>\n<li>Umgekehrt sorgt das Dollarzeichen $ daf\u00fcr, dass das Ende des Vorkommens dem Ende einer Zeile entspricht.<\/li>\n<li><strong>[A-Z\u00c9]:<\/strong> Wenn eckige Klammern vorhanden sind, bedeutet dies, dass ein (und nur ein, wenn es wie hier keine weitere Angabe gibt) Zeichen aus der gelieferten Menge akzeptiert wird. A-Z entspricht &#8222;jedem Buchstaben zwischen gro\u00dfem A und gro\u00dfem Z&#8220; (Gro\u00df-\/Kleinschreibung beachten!), zu dem der Buchstabe \u00c9 hinzugef\u00fcgt wird. Dieser erste Teil der <strong>Regex<\/strong> nimmt also einen Gro\u00dfbuchstaben auf.<\/li>\n<li><strong>(pattern)+<\/strong>: Das +-Zeichen f\u00e4ngt pattern zwischen 1 und unendlich vielen Malen ein.<\/li>\n<li><strong>((pattern1)|(pattern2)):<\/strong> Das Symbol | bedeutet &#8222;wir fangen entweder pattern1 oder pattern2&#8220;.<\/li>\n<li><strong>([a-z\u00e9\u00e8\u00e0- ])(?!3{2}) ) :<\/strong> Die erste Klammer funktioniert genauso wie die erste Gruppe. Es werden nur die Zeichen erfasst, die sich in der Klammer befinden; von a bis z Kleinbuchstaben, dann Akzente, ein Leerzeichen und das Sonderzeichen -. Um ein Sonderzeichen aufzurufen, muss man einen Backslash  hinzuf\u00fcgen.<\/li>\n<li>Die zweite Klammer ist ein negativer Lookahead. Ein Lookahead beobachtet, wie der Name schon sagt, den weiteren Verlauf der Zeichenkette und f\u00fcgt eine Bedingung hinzu, damit der Ausdruck angewendet werden kann. Hier wird dies durch die Bedingung &#8222;Der Ausdruck ([a-ze\u00e8\u00e0- ]) erfasst nur dann Text, wenn ihm nicht der Ausdruck 3{2} folgt&#8220; umgesetzt.<\/li>\n<li><strong>3{2} :<\/strong> Wenn eine Zahl entf\u00e4llt (d. h. wenn einer Zahl ein -Zeichen vorangestellt ist), bezieht sich die Zahl auf die zugeh\u00f6rige Gruppe. 3 bezieht sich also auf die dritte Gruppe im Regex!<\/li>\n<li>Wenn eine Zahl hingegen in geschweiften Klammern steht, gibt sie die genaue Anzahl der Vorkommen der vorherigen Gruppe an.<\/li>\n<li>In anderen Worten, dieses Muster bedeutet &#8222;fange ein Zeichen aus der Gruppe [a-ze\u00e8\u00e0- ] ein, vorausgesetzt, es kommt nicht \u00f6fter als zweimal vor&#8220;.<\/li>\n<li><strong>(?&lt;s)([A-ZE])(?!![A-ZE]):<\/strong> \u00c4hnlich wie bei einem Lookahead ist die erste Gruppe von Klammern ein positiver Lookbehind. captures any white space (a space, a tab). Wenn man der gleichen Logik folgt, kann man erahnen, dass dieser Ausdruck in den Satz &#8222;f\u00e4ngt einen Gro\u00dfbuchstaben (A, B, &#8230;, Z oder \u00c9) nur dann ein, wenn ihm ein Leerzeichen vorausgeht und KEIN anderer Gro\u00dfbuchstabe folgt&#8220; \u00fcbersetzt werden kann.<\/li>\n<li>Schlie\u00dflich bedeutet (.+), dass jedes beliebige Zeichen unbegrenzt akzeptiert wird.<\/li>\n<\/ul>\n<p>Mit all diesen Regeln an Ort und Stelle wird die gesamte Regex pl\u00f6tzlich sehr intuitiv!<\/p>\n<h3>regex101: eine Plattform, um deine Regexe zu \u00fcberpr\u00fcfen<\/h3>\n<p>Um das Verhalten eines frisch erstellten Ausdrucks zu \u00fcberpr\u00fcfen, gibt es eine sehr praktische Seite: <a href=\"\/\">https:\/\/regex101.com\/<\/a>.<\/p>\n<p>Auf dieser Seite kannst du deine Regex und die zugeh\u00f6rige Programmiersprache eingeben und dann eine beliebige <strong>Zeichenkette in das daf\u00fcr vorgesehene Feld eintragen.<\/strong> Wenn das Pattern einen Text erfasst, wird dieser hervorgehoben und von der Website erfasst.<\/p>\n<p>Wenn du dich \u00fcber den vorherigen Teil gewundert hast, sieh dir den Text an, den das Pattern erfasst (oder auch nicht):<\/p>\n<p><img decoding=\"async\" width=\"978\" height=\"415\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/8\/2023\/07\/image2-5.png\" alt=\"\" loading=\"lazy\"><\/p>\n<p>Dieses Pattern nimmt nur g\u00fcltige Pseudonyme nach einer festgelegten Syntax.<\/p>\n<h2>Zusammenfassend<\/h2>\n<p>Regexe sind einfach zu benutzen und sehr vielseitig, und es ist ein gro\u00dfer Vorteil, dieses Werkzeug zu beherrschen. Es ist zwar m\u00f6glich, ein Problem auch ohne Regex zu l\u00f6sen, aber die Regex-L\u00f6sung ist oft die effektivste von allen.<\/p>\n<p><a href=\"https:\/\/liora.io\/de\/unsere-aus-und-weiterbildungen\"><br \/>\nData Science Weiterbildung<br \/>\n<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In der Welt der Computer m\u00fcssen wir oft Aufgaben erledigen, die mit Textverarbeitung zu tun haben. Es gibt ein universelles Werkzeug namens Regex, das oft die leistungsf\u00e4higsten L\u00f6sungen in diesem Bereich anbietet. Regul\u00e4re Ausdr\u00fccke sind jedoch weitgehend unbekannt, da sie manchmal etwas verwirrend aussehen. Was ist Regex? Ein regul\u00e4rer Ausdruck, auch umgangssprachlich Regex genannt, ist [&hellip;]<\/p>\n","protected":false},"author":76,"featured_media":218737,"comment_status":"open","ping_status":"open","sticky":false,"template":"elementor_theme","format":"standard","meta":{"_acf_changed":false,"editor_notices":[],"footnotes":""},"categories":[2476],"class_list":["post-181512","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cloud-dev"],"acf":[],"_links":{"self":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts\/181512","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/users\/76"}],"replies":[{"embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/comments?post=181512"}],"version-history":[{"count":2,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts\/181512\/revisions"}],"predecessor-version":[{"id":218738,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts\/181512\/revisions\/218738"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/media\/218737"}],"wp:attachment":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/media?parent=181512"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/categories?post=181512"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}