1. Regex (Reguläre Ausdrücke)

Reguläre Ausdrücke, oft als Regex abgekürzt, sind ein mächtiges Werkzeug zur musterbasierten Textauswahl. Ihr Verständnis ist grundlegend für die Beherrschung der Textmanipulation unter Linux. Obwohl es viele Apps gibt, um Linux zu lernen, ist das Eintauchen in Kernkonzepte wie regular expression linux der schnellste Weg zu fortgeschrittenen Linux-Kenntnissen. Sie verwenden spezielle Notationen, von denen einige Wildcards wie * ähneln.

Lassen Sie uns einige der gängigsten Regex-Operatoren untersuchen, die in fast allen Programmiersprachen universell sind. Wir verwenden den folgenden Text als Beispiel:

sally sells seashells
by the seashore

Ankern am Zeilenanfang

Das Caret-Symbol ^ passt auf den Anfang einer Zeile. Es stellt sicher, dass Ihr Muster nur am Anfang erscheint.

^by

Dieses Muster würde die Zeile "by the seashore" abgleichen, aber nicht "sally sells seashells".

Ankern am Zeilenende

Das Dollar-Symbol $ passt auf das Ende einer Zeile. Es ist das Gegenstück zum ^-Anker.

seashore$

Dieses Muster würde die Zeile "by the seashore" abgleichen, da sie auf "seashore" endet.

Abgleich eines beliebigen einzelnen Zeichens

Der Punkt . ist ein Platzhalter, der ein beliebiges einzelnes Zeichen abgleicht.

b.

In unserem Beispiel würde dies "by" abgleichen.

Verwendung von Klammern für Zeichensätze

Klammern [] ermöglichen es Ihnen, eine Menge von Zeichen anzugeben, die abgeglichen werden sollen. Dies bietet mehr Kontrolle als der Platzhalter ..

s[ae]lls

Dies würde "sells" abgleichen und würde auch "salls" abgleichen.

Sie können Klammern auch verwenden, um anzugeben, was nicht abgeglichen werden soll. Wenn das Caret ^ das erste Zeichen innerhalb der Klammern ist, negiert es die Menge und gleicht jedes Zeichen ab, außer denen, die aufgelistet sind.

s[^e]lls

Dies würde "salls" abgleichen, aber nicht "sells".

Schließlich unterstützen Klammern Bereiche, um effizient eine große Menge von Zeichen zu definieren.

d[a-c]g

Dieses Muster gleicht "dag", "dbg" und "dcg" ab. Beachten Sie, dass Bereiche groß-/kleingeschrieben werden. Zum Beispiel gleicht [a-c] kein A, B oder C ab.

Das Erlernen dieser Operatoren ist einer der besten Wege, um die Effizienz der Linux-Kommandozeile zu erlernen.

Melden Sie sich an, um Ihren Lernfortschritt zu speichern

Anmelden

Übungen

Bringen Sie Ihr Wissen in die Praxis. Hier sind einige praktische Übungen, um Ihr Verständnis von regulären Ausdrücken und Musterabgleich zu festigen:

  1. Text mit grep unter Linux suchen - In diesem Lab lernen Sie, mit dem Befehl grep nach Text in Dateien auf einem Linux-System zu suchen. Sie führen einfache Suchen durch, zeigen Zeilennummern an, verwenden Anker wie ^ und $ zur Anpassung von Zeilenpositionen und nutzen sowohl einfache als auch erweiterte reguläre Ausdrücke für komplexen Musterabgleich.
  2. Textverarbeitung und reguläre Ausdrücke - Lernen Sie die leistungsstarken Textverarbeitungswerkzeuge grep, sed und awk kennen. Erfahren Sie, wie Sie reguläre Ausdrücke für effiziente Textmanipulation und Musterabgleich unter Linux verwenden.
  3. Extrahieren von E-Mails und Zahlen - In dieser Herausforderung lernen Sie, wie Sie grep und reguläre Ausdrücke verwenden, um E-Mail-Adressen und Zahlen aus einer Datei zu extrahieren, was wesentliche Linux-Textverarbeitungsfähigkeiten demonstriert.

Diese Labs helfen Ihnen, die Konzepte in realen Szenarien anzuwenden und Vertrauen in reguläre Ausdrücke und Textverarbeitung aufzubauen.

Quiz

Welchen regulären Ausdruck würden Sie verwenden, um ein beliebiges einzelnes Zeichen abzugleichen?