Einblick in reguläre Ausdrücke

Syntax und Semantik

Du kennst es bestimmt aus der Programmierung: Machst du einen Schreibfehler, stürzt dein Programm ab oder wird gar nicht erst ausgeführt. Hast du dein Programm dann verbessert, läuft es zwar, doch macht nicht das, was es soll. In der Informatik unterscheiden wir hierbei Syntax und Semantik.

Schaue dir die Begriffe zunächst an Alltagsbeispielen an.

Warum versteht der Mitschüler nicht?

 

Die Syntax einer Sprache beschreibt die Regeln, nach denen Sprachkonstrukte gebildet werden.

Warum versteht der Mitschüler, obwohl die Syntax nicht korrekt ist?

 

Die Semantik einer Sprache beschreibt die Bedeutung der Sprachkonstrukte.

Warum reagiert der Junge so?

 

Die Reaktion ist situativ gedeutet.

Aufgaben

  1. Übernimm die Definitionen zu Syntax und Semantik in deinen digitalen Hefter.
  2. Du fährst Fahrrad und radelst auf ein Stopp-Schild zu. Beschreibe, wie Syntax und Semantik an diesem Verkehrsschild zu verstehen sind.

Reguläre Ausdrücke

Sicherlich hast du schon von ChatGPT gehört. Einer künstlichen Intelligenz, der man in Form eines Chats Fragen stellen kann, die dann von ihr meist sehr zufriedenstellend beantwortet werden.

Den folgenden Text hat ChatGPT generiert. Die Frage lautete: „Schreibe eine Kurzgeschichte über eine Diskussion zwischen einem Kind und dessen Eltern wegen zu starker Handynutzung“.

Es war einmal ein kleines Mädchen namens Lena, das sehr gerne mit ihrem Handy spielte. Sie verbrachte Stunden damit, Spiele zu spielen und Nachrichten mit ihren Freunden zu schreiben. Eines Tages jedoch wurde Lena von ihren Eltern zur Rede gestellt.

„Lena, du verbringst viel zu viel Zeit mit deinem Handy“, sagte ihre Mutter besorgt. „Du solltest mehr Zeit mit deiner Familie verbringen und dich mehr um deine Schularbeiten kümmern.“

Lena seufzte. Sie wusste, dass ihre Eltern recht hatten, aber sie konnte einfach nicht aufhören, mit ihrem Handy zu spielen. Es war einfach zu verlockend.

„Ich weiß, Mama, aber ich kann einfach nicht aufhören“, antwortete sie. „Es ist so unterhaltsam und entspannend.“

Ihr Vater runzelte die Stirn. „Es ist wichtig, dass du lernst, deine Zeit sinnvoll zu nutzen, Lena. Wenn du zu viel Zeit mit deinem Handy verbringst, wirst du deine Schularbeiten vernachlässigen und dich von deiner Familie und Freunden entfernen.“

Lena wusste, dass ihr Vater recht hatte. Sie beschloss, ihre Handynutzung zu reduzieren und mehr Zeit mit ihrer Familie und ihren Schularbeiten zu verbringen. Es war zwar schwierig, aber sie wusste, dass es das Richtige für sie war.

ChatGPT (04.01.2023)

Aufgaben

  1. Öffne die Webseite regex101 (bzw. Regex Tester oder RegExr) und kopiere die oben genannte Kurzgeschichte in das Textfeld.
Aufbau von regex101 mit Python-Flavor
  1. Probiere nacheinander die folgenden Befehle im Expression-Feld und notiere dir, was sie bewirken.
    • Eltern
    • M
    • [A-Z]
    • [a-z]
    • [a-zäöüß]
    • [a-z]{3}
    • ([a-z]{3})
      Hinweis: Vor der öffnenden und nach der schließenden runden Klammer steht jeweils ein Leerzeichen.
    • [a-z]*
    • [a-z]+
    • .
    • \.
  2. Versuche nun reguläre Ausdrücke zu erstellen, um folgende Inhalte zu finden.
    • Finde das Wort Lena.
    • Finde alle Substantive (bzw. Wörter, die mit einem großen Buchstaben beginnen).
    • Finde alle Wörter, die mit einem kleinen e beginnen.
    • Finde alle Satzzeichen.
    • Finde alle Wörter mit genau sechs Buchstaben.
  3. \w bzw. \W haben besondere und erleichternde Bedeutungen. Probiere diese Befehle aus und versuche andere reguläre Ausdrücke zu finden bzw. zu recherchieren, die die gleichen Ergebnisse liefern.