Informationsextraktion Materialien zur Vorlesung

Größe: px
Ab Seite anzeigen:

Download "Informationsextraktion Materialien zur Vorlesung"

Transkript

1 Vordefinierte Informationsextraktion Materialien zur Vorlesung Reguläre Ausdrücke D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Winter 2011/12, 16. Dezember 2011, c D.Rösner

2 Gliederung Einleitung Vordefinierte 1 Einleitung Vordefinierte 6 7 8

3 Vordefinierte Reguläre Ausdrücke viele interessierende Token und Token-Kombinationen lassen sich mithilfe regulärer Ausdrücke beschreiben im folgenden wird die API aus java.util.regex als Beispiel einer Sprache für reguläre Ausdrücke vorgestellt URL: tutorial/extra/regex/index.html unter dieser URL ist auch ein einfaches Testprogramm verfügbar (sog. RegexTestHarness) s.a. [Hab04]

4 Vordefinierte Reguläre Ausdrücke einfachster Fall eines regulären Ausdrucks ist ein String-Literal Beispiel: REGEX ist foo String (INPUT) ist ebenfalls foo Ergebnis des RegexTestHarness ist dann Current REGEX is: foo Current INPUT is: foo I found the text "foo" starting at index 0 and ending at index 3.

5 Vordefinierte Reguläre Ausdrücke ein regulärer Ausdruck kann mehrmals Erfolg haben Current REGEX is: foo Current INPUT is: foofoofoo I found the text "foo" starting at index 0 and ending at index 3. I found the text "foo" starting at index 3 and ending at index 6. I found the text "foo" starting at index 6 and ending at index 9.

6 Vordefinierte Reguläre Ausdrücke Beachte: ein erneuter Match kann erst frühestens bei der End-Position des vorherigen Match beginnen Current REGEX is: foofo Current INPUT is: foofoofoofoofo I found the text "foofo" starting at index 0 and ending at index 5. I found the text "foofo" starting at index 6 and ending at index 11.

7 Vordefinierte Reguläre Ausdrücke flexibler als mit String-Literalen lassen sich Match-Bedingungen formulieren, wenn Meta-Zeichen verwendet werden Meta-Zeichen werden vom Matcher auf spezielle Weise interpretiert Beispiel: der Punkt (.) als Meta-Zeichen passt auf ein beliebiges Zeichen Current REGEX is: cat. Current INPUT is: cats I found the text "cats" starting at index 0 and ending at index 4.

8 Vordefinierte Reguläre Ausdrücke: Meta-Zeichen die durch die regex-api unterstützten Meta-Zeichen sind: ( [ { \ ^ $ )? * +. Meta-Zeichen können auf folgende Weise als gewöhnliche Zeichen verwendet werden: durch Voranstellen eines Backslash ( \) durch Einschluss zwischen \Q und \E

9 Vordefinierte Reguläre Ausdrücke: im von regulären Ausdrücken wird eine Zeichenklasse geschrieben als eine Menge von Zeichen innerhalb eckiger Klammern eine Zeichenklasse enthält die für den Match mit einem einzelnen Zeichen der Eingabe in Frage kommenden Zeichen Beispiel: Zeichenklasse [rcb] Current REGEX is: [rcb]at Current INPUT is: bat I found the text "bat" starting at index 0 and ending at index 3.

10 Vordefinierte Reguläre Ausdrücke: damit alle Zeichen ausser den aufgelisteten erfolgreich sind, muss das Meta-Zeichen für Negation (^) an den Anfang der Zeichenklasse gestellt werden Current REGEX is: [^bcr]at Current INPUT is: rat No match found. Current REGEX is: [^bcr]at Current INPUT is: hat I found the text "hat" starting at index 0 and ending at index 3.

11 Vordefinierte Reguläre Ausdrücke: um Bereiche von Zeichen (z.b. Buchstaben von u bis z, Ziffern von 5 bis 9) zu kennzeichnen, kann zwischen Anfangselement und Endelement des Bereichs ein - geschrieben werden Current REGEX is: foo[1-5] Current INPUT is: foo5 I found the text "foo5" starting at index 0 and ending at index Current REGEX is: foo[1-5] Current INPUT is: foo6 No match found.

12 Vordefinierte Reguläre Ausdrücke: Bereiche können auch nebeneinandergestellt werden, z.b. [a-za-z] Negation kann mit Bereich verwendet werden Current REGEX is: foo[^1-5] Current INPUT is: foo1 No match found. Current REGEX is: foo[^1-5] Current INPUT is: foo6 I found the text "foo6" starting at index 0 and ending at index

13 Vordefinierte Reguläre Ausdrücke: Mengenoperationen bei für beliebige (nicht nur Bereiche) stehen die Mengenoperationen Vereinigung, Durchschnitt und Mengendifferenz zur Verfügung syntaktisch wird die Vereinigung durch Einbetten einer Zeichenklasse innerhalb einer anderen dargestellt Current REGEX is: [0-4[789]] Current INPUT is: 0 I found the text "0" starting at index 0 and ending at index 1.

14 Vordefinierte Reguläre Ausdrücke: Mengenoperationen syntaktisch wird der Durchschnitt mit dem Operator && dargestellt Current REGEX is: [0-9&&[345]] Current INPUT is: 5 I found the text "5" starting at index 0 and ending at index 1. Current REGEX is: [0-9&&[345]] Current INPUT is: 2 No match found.

15 Vordefinierte Reguläre Ausdrücke: Mengenoperationen syntaktisch wird die Mengendifferenz als Durchschnitt mit einem Komplement realisiert Current REGEX is: [0-9&&[^345]] Current INPUT is: 2 I found the text "2" starting at index 0 and ending at index 1. Current REGEX is: [0-9&&[^345]] Current INPUT is: 3 No match found.

16 Vordefinierte Reguläre Ausdrücke: mit n kann festgelegt werden, wie oft ein Match erwartet wird bzw. zulässig ist die Meta-Zeichen * +? haben zunächst die aus formalen Sprachen (Kleene; s. z.b. XML-DTDs) bekannte Bedeutung: Muster Bedeutung x* null oder endlich viele x x+ ein oder endlich viele x x? null oder ein x

17 Vordefinierte Reguläre Ausdrücke: mit in nachgestellten geschweiften Klammern angegebenen n kann festgelegt werden, dass ein Muster exakt n mal erfolgreich sein soll (Syntax: {n}), ein Muster mindestens n mal erfolgreich sein soll (Syntax: {n,}), ein Muster mindestens m und höchstens n mal erfolgreich sein soll (Syntax: {m,n}).

18 Vordefinierte Reguläre Ausdrücke: Muster exakt n mal erfolgreich Current REGEX is: a{3} Current INPUT is: aa No match found. Current REGEX is: a{3} Current INPUT is: aaa I found the text "aaa" starting at index 0 and ending at index 3. Current REGEX is: a{3} Current INPUT is: aaaa I found the text "aaa" starting at index 0 and ending at index 3.

19 Vordefinierte Reguläre Ausdrücke: Muster mindestens n mal erfolgreich Current REGEX is: a{3,} Current INPUT is: aaaaaaaaa I found the text "aaaaaaaaa" starting at index 0 and ending at index 9.

20 Vordefinierte Reguläre Ausdrücke: Muster mindestens m und höchstens n mal erfolgreich Current REGEX is: a{3,6} // find at least 3 // (but no more than 6) a s in a row Current INPUT is: aaaaaaaaa I found the text "aaaaaa" starting at index 0 and ending at index 6. I found the text "aaa" starting at index 6 and ending at index 9.

21 Vordefinierte Reguläre Ausdrücke: können auch auf und angewendet werden Current REGEX is: (dog){3} Current INPUT is: dogdogdogdogdogdog I found the text "dogdogdog" starting at index 0 and ending at index 9. I found the text "dogdogdog" starting at index 9 and ending at index 18. Current REGEX is: dog{3} Current INPUT is: dogdogdogdogdogdog No match found.

22 Vordefinierte Reguläre Ausdrücke: für Zeichenklasse Current REGEX is: [abc]{3} Current INPUT is: abccabaaaccbbbc I found the text "abc" starting at index 0 and ending at index 3. I found the text "cab" starting at index 3 and ending at index 6. I found the text "aaa" starting at index 6 and ending at index 9. I found the text "ccb" starting at index 9 and ending at index 12. I found the text "bbc" starting at index 12 and ending at index 15.

23 Vordefinierte Reguläre Ausdrücke: Es gibt subtile Unterschiede zwischen unterschiedlichen bei der Verarbeitung von Mustern mit n greedy (Default): es wird versucht, so viel wie möglich zu matchen; Reduktion des Ergebnisses (Backup) nur, wenn wegen späterem Fehlschlag erforderlich lazy oder reluctant (Syntax: nachgestelltes?): es wird versucht, so wenig wie möglich zu matchen; Ausweitung des Ergebnisses nur, wenn wegen späterem Fehlschlag erforderlich...

24 Vordefinierte Reguläre Ausdrücke:... possessive (Syntax: nachgestelltes +): es wird versucht, so viel wie möglich zu matchen, aber im Unterschied zu greedy wird ein einmal erfolgreicher (lokaler) Match nicht wieder (zugunsten globalen Erfolgs) aufgegeben

25 Vordefinierte Reguläre Ausdrücke: Beispiele für Current REGEX is:.*foo // greedy quantifier Current INPUT is: xfooxxxxxxfoo I found the text "xfooxxxxxxfoo" starting at index 0 and ending at index 13. Current REGEX is:.*?foo // reluctant quantifier Current INPUT is: xfooxxxxxxfoo I found the text "xfoo" starting at index 0 and ending at index 4. I found the text "xxxxxxfoo" starting at index 4 and ending at index 13. Current REGEX is:.*+foo // possessive quantifier Current INPUT is: xfooxxxxxxfoo

26 Vordefinierte Reguläre Ausdrücke: Varianten bei n Greedy Lazy Possessive Bedeutung x* x*? x*+ null oder endlich viele x x+ x+? x++ ein oder endlich viele x x? x?? x?+ null oder ein x x{n} x{n}? x{n}+ exakt n mal x x{n,} x{n,}? x{n,}+ mindestens n mal x x{m,n} x{m,n}? x{m,n}+ m bis n mal x

27 Vordefinierte Reguläre Ausdrücke Die regex API bietet die folgenden vordefinierten : Muster Bedeutung. beliebiges Zeichen \d eine Ziffer: [0-9] \D eine Nicht-Ziffer: [^0-9] \s ein Leerzeichen (whitespace): [ \t\n\x0b\f\r] \S ein Nicht-Leerzeichen (non-whitespace): [^\s] \w ein Wort-Zeichen: [a-za-z_0-9] \W ein Nicht-Wort-Zeichen: [^\w]

28 Vordefinierte Reguläre Ausdrücke: Begrenzungsbedingungen mit den sog. boundary matchers kann Match von einer speziellen Begrenzungsbedingung abhängig gemacht werden: Boundary Matcher Bedeutung ^ Zeilenanfang $ Zeilenende \b eine Wortgrenze \B keine Wortgrenze \A Beginn der Eingabe \G Ende des vorherigen Match \Z Ende der Eingabe (ignoriert Terminatorzeichen \z Ende der Eingabe

29 Vordefinierte Reguläre Ausdrücke: (capturing groups) sind in Klammern zusammengefasste Folgen von Zeichen oder von rekursiv Zählung der Gruppen anhand der Klammern von links nach rechts: der Ausdruck ((A))(B(C))) enthält die Gruppen 1 ((A))(B(C))) 2 (A) 3 (B(C)) 4 (C) Gruppe 0 ist der gesamte Ausdruck

30 Vordefinierte Reguläre Ausdrücke: auf kann wieder verwiesen werden Syntax: Backslash ( \) gefolgt von Nummer der Gruppe Beispiel: Current REGEX is: (\d\d)\1 Current INPUT is: 1212 I found the text "1212" starting at index 0 and ending at index 4. Current REGEX is: (\d\d)\1 Current INPUT is: 1234 No match found.

31 Vordefinierte Reguläre Ausdrücke: bei werden die matchenden Teilstrings des Kandidaten von der regex engine im Speicher gehalten will man eine Gruppe nur als logische Einheit behandeln ohne den matchenden Teilstring zu speichern, so kann dies durch eine nicht-ergreifende Wiederholungsgruppe geschehen (engl. noncapturing group) nicht-ergreifende werden bei der Indexvergabe an Grupppen nicht gezählt

32 Vordefinierte Reguläre Ausdrücke: Syntax: nach der öffnenden Klammer der Gruppe (?:) anbringen Beispiel: Unterschied zwischen den Mustern (\w)(\d\d)(\w+) und (\w)(\d\d)(?:\w+) Beispiel: Unterschied zwischen den Mustern (good bad terrible great) morning und (?:good bad terrible great) morning

33 Vordefinierte Reguläre Ausdrücke: mit sog. lookarounds kann der berücksichtigt werden, ohne ihn zu konsumieren vier Varianten: positive Vorausschau negative Vorausschau positive Rückschau negative Rückschau engl. Bezeichner: lookahead bzw. lookbehind

34 Vordefinierte Reguläre Ausdrücke: lookahead Syntax: nach der öffnenden Klammer der Gruppe?= anbringen Beispiel: Muster (?=\d\d) Beispiel: akzeptieren von IP-Adressen, aber nur wenn sie mit 255 beginnen Muster: (?=^255).* Kandidat: beachte unterschiedliches Verhalten von (?:=^255).*

35 Vordefinierte Reguläre Ausdrücke: negative lookahead Syntax: nach der öffnenden Klammer der Gruppe?! anbringen damit wird ausgedrückt, dass etwas nicht folgen soll im Kandidatenstring Beispiel: akzeptieren von Namen aus Vorname John gefolgt von Nachname, sofern dieser nicht Smith ist Muster: John (?!Smith)[A-Z]\w+

36 Vordefinierte Reguläre Ausdrücke: positive lookbehind Syntax: nach der öffnenden Klammer der Gruppe?<= anbringen Beispiel: sicherstellen, dass dem Kandidaten zwei Ziffern vorangehen Muster: (?<=\d\d).* Beispiel: akzeptieren als URL, wenn vorangeht Muster: (?<=

37 Vordefinierte Reguläre Ausdrücke: negative lookbehind Syntax: nach der öffnenden Klammer der Gruppe?<! anbringen Beispiel: sicherstellen, dass dem Kandidaten nicht zwei Ziffern vorangehen Muster: (?<!\d\d).* Frage: Wie wird String 42 ist die Antwort mit dem Muster verarbeitet?

38 Vordefinierte Reguläre Ausdrücke Hinweise zum Erhöhen der (vgl. [M. Habibi, 2004, Ch. 3]) Bevorzuge nicht-ergreifende, sofern möglich. Schalte der regex-verarbeitung einfache Tests vor. Beispiel: Bevor auf -adresse und ihre Komponenten getestet wird, prüfe, ob überhaupt enthalten: if (candidate.indexof("@")) //..

39 Vordefinierte Reguläre Ausdrücke Hinweise zum Erhöhen der cont. Ordne Alternativen nach erwarteter Häufigkeit. Beispiel: wenn 90 Prozent der Mitglieder eines Klubs promoviert, dann Muster für Titel.*\b(?:Dr Mr Mrs Miss Brother Mister).* Kandidat: Please meet Dr Hana Saez

40 Vordefinierte Reguläre Ausdrücke Hinweise zum Erhöhen der cont. Sei so spezifisch wie möglich. Wenn bekannt, dass nur Ziffern zu erwarten, dann nicht \w, sondern \d Wenn bekannt, dass Grossbuchstabe gefolgt von Kleinbuchstaben, dann [A-Z][a-z]+ statt \w* Literale Strings werden (in der J2SE regex Implementation) schneller verarbeitet als so ist bei Suche nach Zahl zwischen 10 und 19 das Muster 1\d effizienter als \d+, \d\d, \d{2},...

41 Vordefinierte Reguläre Ausdrücke Hinweise zum Erhöhen der cont. Spezifiziere die Position des Kandidaten, falls angebbar. m.a.w. wenn Begrenzungsbedingungen gelten müssen, sollten diese angegeben werden Spezifiziere die Länge des Kandidaten, falls angebbar. m.a.w. \b[a-z][a-z]{1,20} besser als \b[a-z][a-z]+ m.a.w. bei sechs oder mehr Zeichen ist \w\w\w\w\w\w+ besser als \w+

42 Vordefinierte Reguläre Ausdrücke Hinweise zum Erhöhen der cont. Grenze den Bereich von Alternativen ein. m.a.w. gegenüber Good Morning Good Evening ist Good (?:Morning Evening) vorzuziehen

43 Literatur: I Einleitung Vordefinierte Mehran Habibi. Java Regular Expressions: Taming the java.util.regex engine. Apress, Berkeley, 2004.

Gliederung. Informationsextraktion Materialien zur Vorlesung. Entwicklung eines regex für Firmennamen. Entwicklung eines regex für Firmennamen

Gliederung. Informationsextraktion Materialien zur Vorlesung. Entwicklung eines regex für Firmennamen. Entwicklung eines regex für Firmennamen Gliederung Informationsextraktion Materialien zur Vorlesung Beispiel: reguläre Ausdrücke für Firmennamen 1 D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke

Mehr

Informationsextraktion Materialien zur Vorlesung

Informationsextraktion Materialien zur Vorlesung Informationsextraktion Materialien zur Vorlesung Beispiel: reguläre Ausdrücke für Firmennamen D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität

Mehr

Webengineering. Reguläre Ausdrücke. Dienstag, 2. Juli 13

Webengineering. Reguläre Ausdrücke. Dienstag, 2. Juli 13 Webengineering Reguläre Ausdrücke Marcel Vilas 1 DHBW - Stuttgart 1 RegExp - Allgemein Muster, die eine Menge von Zeichenketten mit Hilfe bestimmter syntaktischer Regeln beschreiben Werden oft als Suchmuster

Mehr

Reguläre Ausdrücke mit Java

Reguläre Ausdrücke mit Java Reguläre Ausdrücke mit Java Johannes Dyck, Thomas Schulz Projektseminar www.prominentpeople.info Gliederung 2 1. Grundlagen von regulären Ausdrücken 1. Aufbau 2. Zeichenklassen 3. Metazeichen 4. Quantoren

Mehr

Reguläre Ausdrücke. Silke Trißl Wissensmanagement in der Bioinformatik

Reguläre Ausdrücke. Silke Trißl Wissensmanagement in der Bioinformatik Reguläre Ausdrücke Silke Trißl Wissensmanagement in der Bioinformatik Sinn und Ziel Reguläre Ausdrücke sind eine Möglichkeit eine Menge von Strings aufgrund von gemeinsamen Merkmalen zu beschreiben. Suche

Mehr

Reguläre Ausdrücke. Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik

Reguläre Ausdrücke. Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik Reguläre Ausdrücke Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik Sinn und Ziel Reguläre Ausdrücke sind eine Möglichkeit eine Menge von Strings aufgrund von gemeinsamen Merkmalen zu

Mehr

Reguläre Ausdrücke IDE AUTUMN SCHOOL

Reguläre Ausdrücke IDE AUTUMN SCHOOL Reguläre Ausdrücke 1 Reguläre Ausdrücke Übersicht Einführung Grundlagen Währenddessen: Übungen 2 Was sind Reguläre Ausdrücke? Reguläre Ausdrücke sind Zeichenketten, die Mengen von Zeichenketten beschreiben.

Mehr

Propädeutikum Programmierung in der Bioinformatik

Propädeutikum Programmierung in der Bioinformatik Propädeutikum Programmierung in der Bioinformatik Java Reguläre Ausdrücke und PROSITE-Patterns Thomas Mauermeier 04.12.2018 Ludwig-Maximilians-Universität München Warum Reguläre Ausdrücke? Regulärer Ausdruck

Mehr

Digital Humanities: Übung 1

Digital Humanities: Übung 1 Digital Humanities: Übung 1 Suche mit Boolschen Operatoren und Regulären Ausdrücken Sven Büchel Jena Language & Information Engineering (JULIE) Lab Friedrich-Schiller-Universität Jena, Germany http://www.julielab.de

Mehr

Programmierkurs Kapitel 4

Programmierkurs Kapitel 4 Kapitel 4 Dipl.-Wirt.-Inf. Stefan Fleischer Dipl.-Wirt.-Inf. Ulrich Wolffgang Komponente: Parser Interface für Parser entwickeln public interface IParser { public ArrayList parseemailaddresses(string

Mehr

Einführung in die Computerlinguistik Suche mit regulären Ausdrücken

Einführung in die Computerlinguistik Suche mit regulären Ausdrücken Einführung in die Computerlinguistik Suche mit regulären Ausdrücken Dozentin: Wiebke Petersen 9. Foliensatz Wiebke Petersen Einführung CL 1 Suche mit regulären Ausdrücken Suche nach allen Wortformen des

Mehr

Formale Sprachen und Automaten

Formale Sprachen und Automaten Formale Sprachen und Automaten Kapitel 3: Regular Expressions Vorlesung an der DHBW Karlsruhe Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2012 Kapitel 3 Regular

Mehr

Einführung in die Computerlinguistik Suche mit regulären Ausdrücken

Einführung in die Computerlinguistik Suche mit regulären Ausdrücken Einführung in die Computerlinguistik Suche mit regulären Ausdrücken Dozentin: Wiebke Petersen 9. Foliensatz Wiebke Petersen Einführung CL 1 Suche mit regulären Ausdrücken Suche nach allen Wortformen des

Mehr

Regular expressions for pros Reguläre Ausdrücke für Fortgeschrittene (Perl) Elena Neuburg

Regular expressions for pros Reguläre Ausdrücke für Fortgeschrittene (Perl) Elena Neuburg Regular expressions for pros Reguläre Ausdrücke für Fortgeschrittene (Perl) Elena Neuburg Inhaltsverzeichnis Definition Pattern Matching Greediness Eagerness Backtracking Nützliche Optionen Backreferences

Mehr

Reguläre Ausdrücke. Michael Jäger. 4. April 2017

Reguläre Ausdrücke. Michael Jäger. 4. April 2017 Reguläre Ausdrücke Michael Jäger 4. April 2017 Zeichenketten und Sprachen Ein Alphabet ist eine endliche Menge von Symbolen. Beispiele: 1. Σ 1 = {0, 1} 2. Σ 2 = {a, b, c, d, e, f, g, h, i, j, k, l, m,

Mehr

Einführung in die Computerlinguistik Pumpinglemma für reguläre Sprachen. Suche mit regulären Ausdrücken. Dozentin: Wiebke Petersen 17.5.

Einführung in die Computerlinguistik Pumpinglemma für reguläre Sprachen. Suche mit regulären Ausdrücken. Dozentin: Wiebke Petersen 17.5. Einführung in die Computerlinguistik Pumpinglemma für reguläre Sprachen Dozentin: Wiebke Petersen 17.5.2010 Wiebke Petersen Einführung CL (SoSe 2010) 1 Pumping-lemma für reguläre Sprachen Lemma (Pumping-Lemma)

Mehr

Empfehlenswerte Referenzen

Empfehlenswerte Referenzen Wenn Google etwas nicht finden kann, fragen sie Jack Bauer. ("Fakten über Jack Bauer") Inhalt Empfehlenswerte Referenzen...1 0 Wozu reguläre Ausdrücke?...1 1 Die Elemente regulärer Ausdrücke...2 2 Ein

Mehr

/ Vortrag Unix-AG

/ Vortrag Unix-AG 16.6.2010 / Vortrag Unix-AG xkcd Fortsetzung... Grundlegendes 1 Begriff: = regular expressions kurz: regex Funktion: definieren flexible Muster, mit denen in Texten gesucht (und ersetzt) werden kann. Diese

Mehr

Einführung in die Computerlinguistik Pumpinglemma für reguläre Sprachen. Suche mit regulären Ausdrücken. Dozentin: Wiebke Petersen

Einführung in die Computerlinguistik Pumpinglemma für reguläre Sprachen. Suche mit regulären Ausdrücken. Dozentin: Wiebke Petersen Einführung in die Computerlinguistik Pumpinglemma für reguläre Sprachen Dozentin: Wiebke Petersen 24.11.2009 Wiebke Petersen Einführung CL (WiSe 09/10) 1 Pumping-lemma für reguläre Sprachen Lemma (Pumping-Lemma)

Mehr

Reguläre Ausdrücke Suchmuster, Pattern Matching

Reguläre Ausdrücke Suchmuster, Pattern Matching Suchmuster, Pattern Matching Ein oder mehrere Einzelzeichen in interner Variablen $_suchen: /e/ #liefert wahr, wenn $_ ein 'e' enthält. /aus/ #liefert wahr, wenn $_ 'aus' enthält. while { if (/e/)

Mehr

Schritt für Schritt Reguläre Ausdrücke verstehen. Einstieg in. Reguläre Ausdrücke. Michael Fitzgerald O REILLY. Übersetzung von Thomas Demmig

Schritt für Schritt Reguläre Ausdrücke verstehen. Einstieg in. Reguläre Ausdrücke. Michael Fitzgerald O REILLY. Übersetzung von Thomas Demmig Schritt für Schritt Reguläre Ausdrücke verstehen Einstieg in Reguläre Ausdrücke O REILLY Michael Fitzgerald Übersetzung von Thomas Demmig Inhalt Vorwort.... 1 Was ist ein regulärer Ausdruck?... 1 Ein Anfang

Mehr

Reguläre Ausdrücke. Felix Döring, Felix Wittwer 14. November Python-Kurs

Reguläre Ausdrücke. Felix Döring, Felix Wittwer 14. November Python-Kurs Reguläre Ausdrücke Felix Döring, Felix Wittwer 14. November 2016 Python-Kurs Gliederung 1. Grundlagen 2. Matching Regeln Sonderzeichen Zusammengesetzte Regex Spezielle Sequenzen 3. Methoden 4. reqular

Mehr

Algorithmen und Datenstrukturen II

Algorithmen und Datenstrukturen II Algorithmen und Datenstrukturen II Algorithmen zur Textverarbeitung III: D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Sommer 2009,

Mehr

Programmierparadigmen

Programmierparadigmen Programmierparadigmen D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Sommer 2009, 22. Juni 2009, c 2009 D.Rösner D. Rösner PGP 2009...

Mehr

3 Regular expressions

3 Regular expressions 3 Regular expressions Es gibt eine ganze Reihe von Unix-Werkzeugen, für deren Benutzung es sinnvoll oder gar wesentlich ist, dass man mit etwas umgehen kann, was als regular expression oder kurz Regex

Mehr

Abstrakte Syntax von Prolog (1)

Abstrakte Syntax von Prolog (1) 3. Prolog Syntax 3-1 Abstrakte Syntax von Prolog (1) Abstrakte und konkrete Syntax: Abstrakte Syntax: Nur Datenstrukturen, die der Parser anlegt (z.b. Operatorbaum). Konkrete Syntax: Zeichenketten, die

Mehr

Theoretische Informatik. Reguläre Sprachen und Automaten

Theoretische Informatik. Reguläre Sprachen und Automaten Theoretische Informatik Reguläre Sprachen und Automaten Reguläre Sprachen Reguläre Ausdrücke und Sprachen Gleichungen Syntaxdiagramme Erweiterungen Anwendungen Reguläre Ausdrücke über Σ Syntax: Konstante

Mehr

Wiederholung. Ein deterministischer endlicher Automat (DEA) über einem Alphabet A besteht aus: einer endlichen Menge von Zuständen Q,

Wiederholung. Ein deterministischer endlicher Automat (DEA) über einem Alphabet A besteht aus: einer endlichen Menge von Zuständen Q, Wiederholung Ein deterministischer endlicher Automat (DEA) über einem Alphabet A besteht aus: einer endlichen Menge von Zuständen Q, einem Anfangszustand q 0 Q, einer Menge von Endzuständen Q E Q, einer

Mehr

Reguläre Ausdrücke. AnPr

Reguläre Ausdrücke. AnPr Name Klasse Datum 1 Allgemeines Reguläre Ausdrücke (engl. Regular Expressions) dienen dazu, Texte bzw. Textpassagen zu beschreiben, indem Texte als Mengen von Zeichen interpretiert werden und die Beschreibung

Mehr

Teil VII. Scientific Computing in Computer Science, Technische Universität München

Teil VII. Scientific Computing in Computer Science, Technische Universität München Teil VII Reguläre Ausdrücke IN8008, Wintersemester 2013/2014 134 Was wir uns (vielleicht) schon immer gefragt haben: Wie funktioniert Suche nach einer Zeichenfolge in einem Text? Wie wird Auto-Vervollständigung

Mehr

b{2} [^b]{2} Reguläre Ausdrücke als Hilfsmittel der Textanalyse Manuel Raaf Bayerische Akademie der Wissenschaften, IT-Referat

b{2} [^b]{2} Reguläre Ausdrücke als Hilfsmittel der Textanalyse Manuel Raaf Bayerische Akademie der Wissenschaften, IT-Referat b{2} [^b]{2} Reguläre Ausdrücke als Hilfsmittel der Textanalyse Manuel Raaf raaf@badw.de Bayerische Akademie der Wissenschaften, IT-Referat Reguläre Ausdrücke engl. regular expressions, kurz: regex, regexp

Mehr

Reguläre Ausdrücke. Reguläre Ausdrücke = Regular Expressions = reg.exp./regexp/regexp = RE

Reguläre Ausdrücke. Reguläre Ausdrücke = Regular Expressions = reg.exp./regexp/regexp = RE Blockseminar Einführung in die Korpuslinguistik Seminarleitung: Yvonne Krämer, M.A. REGULAR EXPRESSIONS RegExp Was ist ein regulärer Ausdruck? = Regular Expressions = reg.exp./regexp/regexp = RE Ein regulärer

Mehr

Proseminar UNIX Tools. Ferdinand Beyer

Proseminar UNIX Tools. Ferdinand Beyer Reguläre Ausdrücke Proseminar UNIX Tools Ferdinand Beyer Technische Universität München 08.11.2005 Ferdinand Beyer (TUM) Reguläre Ausdrücke 08.11.2005 1 / 39 Gliederung Allgemeines 1 Allgemeines 2 Notation

Mehr

Python für Linguisten

Python für Linguisten Python für Linguisten Dozentin: Wiebke Petersen & Co-Dozentin: Esther Seyarth Fortgeschrittene Zeichenkettenverarbeitung mit regulären Ausdrücken Esther Seyarth Python 1 Motivation Wir haben bereits einige

Mehr

Perl-Praxis. Madis Rumming Jan Krüger

Perl-Praxis. Madis Rumming Jan Krüger Perl-Praxis Reguläre Ausdrücke Madis Rumming Jan Krüger {mrumming,jkrueger}@cebitec.uni-bielefeld.de 1 Übersicht Reguläre Ausdrücke Muster suchen Muster finden 2 zur Erinnerung Perl := Practical Extraction

Mehr

Gliederung. Algorithmen und Datenstrukturen I. Eine wichtige Frage. Algorithmus. Materialien zur Vorlesung. Begriffsbestimmung EUKLID Primzahltest

Gliederung. Algorithmen und Datenstrukturen I. Eine wichtige Frage. Algorithmus. Materialien zur Vorlesung. Begriffsbestimmung EUKLID Primzahltest Gliederung Algorithmen und Datenstrukturen I Materialien zur Vorlesung D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg 1 Winter 2009/10,

Mehr

Grundlagen der theoretischen Informatik

Grundlagen der theoretischen Informatik Grundlagen der theoretischen Informatik Kurt Sieber Fakultät IV, Department ETI Universität Siegen SS 2013 Vorlesung vom 09.04.2013 Inhalt der Vorlesung Teil I: Automaten und formale Sprachen (Kurt Sieber)

Mehr

Regular Expressions. Daniel Lutz Was ist eine Regular Expression?

Regular Expressions. Daniel Lutz Was ist eine Regular Expression? Regular Expressions Daniel Lutz 12.11.2003 1 Was ist eine Regular Expression? Ausdruck, der ein Textfragment beschreibt Eine Regular Expression passt zu einem Textfragment, wenn das Textfragment

Mehr

Beuth Hochschule Einführende Gentle-Programme WS12/13, S. 1

Beuth Hochschule Einführende Gentle-Programme WS12/13, S. 1 Beuth Hochschule Einführende Gentle-Programme WS12/13, S. 1 Einführende Gentle-Programme Dieses Papier soll die Syntax und Semantik (die Schreibweise und Bedeutung) von einfachen Gentle Programmen anhand

Mehr

Perl-Praxis.

Perl-Praxis. Perl-Praxis Reguläre Ausdrücke Jörn Clausen joern@techfak.uni-bielefeld.de 1 Übersicht Reguläre Ausdrücke Muster suchen Muster finden 2 zur Erinnerung Perl := Practical Extraction and Report Language Text-Dateien

Mehr

Einführung in die Programmiertechnik

Einführung in die Programmiertechnik Einführung in die Programmiertechnik Formale Beschreibung von Programmiersprachen Lexikalische Regeln Definition von Wörtern (Lexem, Token) Gruppierung von Zeichen Lexikalische Kategorien: Klassen ähnlicher

Mehr

Pascal Schärli

Pascal Schärli Informatik I - Übung 8 Pascal Schärli pascscha@student.ethz.ch 12.04.2019 1 Was gibts heute? Best-Of Vorlesung: Prefix / Infix EBNF Vorbesprechung Problem of the Week 2 Vorlesung 3. 1 Prefix Notation Infix

Mehr

Abschnitt 17: Beispiel: Die Klasse String (Teil 2), das Interface Comparable<T>

Abschnitt 17: Beispiel: Die Klasse String (Teil 2), das Interface Comparable<T> Abschnitt 17: Beispiel: Die Klasse String (Teil 2), das Interface Comparable 17. Beispiel: Die Klasse String (Teil 2), das Interface Comparable 17.1 Vergleich von Zeichenketten 17.2 Das Interface

Mehr

3.1 Reservierte Wörter

3.1 Reservierte Wörter 3.1 Reservierte Wörter int Bezeichner für Basis-Typen; if, else, while Schlüsselwörter aus Programm-Konstrukten; (,), ",, {,},,,; Sonderzeichen. 62 3.2 Was ist ein erlaubter Name? Schritt 1: Angabe der

Mehr

Efficient Regexes. Pascal Zambito

Efficient Regexes. Pascal Zambito Efficient Regexes Pascal Zambito 02.06.2015 Themen Catastrophic backtracking Atomic grouping Possessive Quantifiers Non-capturing groups 2 Problem: Catastrophic Backtracking Unnötig kompliziertes Backtracking

Mehr

Einführung in PERL 2 Reguläre Ausdrücke

Einführung in PERL 2 Reguläre Ausdrücke Einführung in PERL 2 Reguläre Ausdrücke BASIEREND AUF FOLIEN VON DR. H. ZINSMEISTER und dem Buch `Einführung in Perl (Lama Buch) von RL Schwartz&T Phoenix sowie hwp://de.sel[tml.org/perl/sprache/regexpr.htm

Mehr

Perl-Praxis.

Perl-Praxis. Perl-Praxis Reguläre Ausdrücke Jörn Clausen joern@techfak.uni-bielefeld.de 1 Übersicht Reguläre Ausdrücke Muster suchen Muster finden 2 zur Erinnerung Perl := Practical Extraction and Report Language Text-Dateien

Mehr

Induktive Definition

Induktive Definition Rechenregeln A B = B A A (B C) = (A B) C A (B C) = (A B) C A (B C) = A B A C (B C) A = B A C A {ε} A = A A {ε} = A (A {ε}) = A (A ) = A A A = A + A A = A + A + {ε} = A Beispiel. Real-Zahlen = {0,..., 9}

Mehr

Perl-Praxis. Reguläre Ausdrücke. Madis Rumming Jan Krüger.

Perl-Praxis. Reguläre Ausdrücke. Madis Rumming Jan Krüger. Perl-Praxis Reguläre Ausdrücke Madis Rumming Jan Krüger {mrumming,jkrueger}@cebitec.uni-bielefeld.de Übersicht Reguläre Ausdrücke Muster suchen Muster finden Perl-Praxis Reguläre Ausdrücke 2/18 zur Erinnerung

Mehr

Perl-Praxis. Jörn Clausen

Perl-Praxis. Jörn Clausen Perl-Praxis Reguläre Ausdrücke Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Reguläre Ausdrücke Muster suchen Muster finden Perl-Praxis Reguläre Ausdrücke 2/19 zur Erinnerung Perl := Practical

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 17 Einstieg in die Informatik mit Java String Tokenizer Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 17 1 Überblick Tokenizer 2 StringTokenizer 3 Verwendung von String.split

Mehr

grep in Adobe InDesign

grep in Adobe InDesign grep in Adobe InDesign Kurs 2, Version CS5 Kursleiter: Serge Paulus Unterlagen Version 2 vom Juni 2011 grep in Adobe InDesign Kurs 2, Version CS5 2 grep in InDesign grep in InDesign Es gibt mehrere Implementierungen

Mehr

Zuerst wird die Bedingung ausgewertet. Ist sie erfüllt, wird der Rumpf des while-statements ausgeführt. Nach Ausführung des Rumpfs wird das gesamte

Zuerst wird die Bedingung ausgewertet. Ist sie erfüllt, wird der Rumpf des while-statements ausgeführt. Nach Ausführung des Rumpfs wird das gesamte Zuerst wird die Bedingung ausgewertet. Ist sie erfüllt, wird der Rumpf des while-statements ausgeführt. Nach Ausführung des Rumpfs wird das gesamte while-statement erneut ausgeführt. Ist die Bedingung

Mehr

3. Nur die mit diesen Regeln erzeugten Ausdrücke sind reguläre Ausdrücke über Σ.

3. Nur die mit diesen Regeln erzeugten Ausdrücke sind reguläre Ausdrücke über Σ. H O C H S C H U L E University of Applied Sciences ZITTAU/GÖRLITZ Fachbereich Informatik Prof. Dr. Christian Wagenknecht Formale Sprachen und Automaten Übung: Reguläre Ausdrücke Zur Erinnerung: Reguläre

Mehr

Sebastian Harl. 03. Oktober 2008

Sebastian Harl. 03. Oktober 2008 Reguläre Ausdrücke Sebastian Harl LUSC Workshop Weekend 2008 03. Oktober 2008 (?:[a-z0-9!#$%& *+/=?^_ { }~-]+(?:\.[a-z0-9!#$%& *+/=?^_ { }~-]+ )* "(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]

Mehr

Gliederung. Algorithmen und Datenstrukturen II. Problem: Längste gemeinsame Teilsequenz. Problem: Längste gemeinsame Teilsequenz

Gliederung. Algorithmen und Datenstrukturen II. Problem: Längste gemeinsame Teilsequenz. Problem: Längste gemeinsame Teilsequenz Gliederung Algorithmen und Datenstrukturen II Algorithmen zur Textverarbeitung II D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg

Mehr

3 Syntax von Programmiersprachen

3 Syntax von Programmiersprachen 3 Syntax von Programmiersprachen Syntax ( Lehre vom Satzbau ) formale Beschreibung des Aufbaus der Worte und Sätze, die zu einer Sprache gehören; im Falle einer Programmiersprache Festlegung, wie Programme

Mehr

3 Syntax von Programmiersprachen

3 Syntax von Programmiersprachen 3 Syntax von Programmiersprachen Syntax ( Lehre vom Satzbau ) formale Beschreibung des Aufbaus der Worte und Sätze, die zu einer Sprache gehören; im Falle einer Programmiersprache Festlegung, wie Programme

Mehr

Arbeiten mit Regulären Ausdrücken. Annette Gerstenberg Würzburg, 16. März 2016 Workshop "Digitale Methoden" beim Forum Junge Romanistik

Arbeiten mit Regulären Ausdrücken. Annette Gerstenberg Würzburg, 16. März 2016 Workshop Digitale Methoden beim Forum Junge Romanistik Arbeiten mit Regulären Ausdrücken Annette Gerstenberg Würzburg, 16. März 2016 Workshop "Digitale Methoden" beim Forum Junge Romanistik Warum RegEx? Ziele! Beispiel 1: Bereinigen eines Transkripts, Entfernen

Mehr

javascript Coding-Guidelines 2. Ausgabe Februar 2015 Der Guideline beschreibt den verwendeten Coding-Stil von javascript als eigene Richtline.

javascript Coding-Guidelines 2. Ausgabe Februar 2015 Der Guideline beschreibt den verwendeten Coding-Stil von javascript als eigene Richtline. javascript Coding-Guidelines 2. Ausgabe Februar 2015 Der Guideline beschreibt den verwendeten Coding-Stil von javascript als eigene Richtline. Inhalts-Verzeichnis 1. Allgemeine Richtlinien...1 1.1 Anzahl

Mehr

Reguläre Ausdrücke - eine Einführung -

Reguläre Ausdrücke - eine Einführung - Ziel Reguläre Ausdrücke - eine Einführung - Andreas Romeyke Leipzig, Oktober/November 2002 Diese Präsentation ist eine kurze Einführung in die Welt der regulären Ausdrücke mit Schwerpunkt Perl. Die Präsentation

Mehr

Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden kann.

Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden kann. Der Satz von Kleene Wir haben somit Folgendes bewiesen: Der Satz von Kleene Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden

Mehr

Stream EDitor SED und Reguläre Ausdrücke

Stream EDitor SED und Reguläre Ausdrücke Stream EDitor SED und Reguläre Ausdrücke ExactCODE New Thinking Store 11. Mai 2006 Was ist SED? sed steht für Stream EDitor eine Variante des Unix Editors ed und arbeitet auf Streams keine interaktiven

Mehr

Perlkurs WS 14/15 Reguläre Ausdrücke I

Perlkurs WS 14/15 Reguläre Ausdrücke I Perlkurs WS 14/15 Reguläre Ausdrücke I 1 Reguläre Ausdrücke Reguläre Ausdrücke mächtigtes Werkzeug von Perl, um nach Mustern (Gruppen von Zeichen) innerhalb von Text zu suchen z.b. in Protein- und DNA-Sequenzen

Mehr

18.09.2010 / Software Freedom Day

18.09.2010 / Software Freedom Day 18.09.2010 / Software Freedom Day xkcd Fortsetzung... Grundlegendes Begriff: = regular expressions kurz: regex Funktion: definieren flexible Muster, mit denen in Texten gesucht (und ersetzt) werden kann.

Mehr

Es gibt viele Programme, die mit regulären Ausdrücken arbeiten:

Es gibt viele Programme, die mit regulären Ausdrücken arbeiten: Reinald Cronauer 7. Februar 2001 Reguläre Ausdrücke 1 Einführung Reguläre Ausdrücke, kurz Regex genannt, erlauben das Suchen von Zeichenfolgen in große Texte. Ein regulärer Ausdruck ist aber flexibler

Mehr

Perl-Praxis. Jörn Clausen

Perl-Praxis. Jörn Clausen Perl-Praxis Reguläre Ausdrücke Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Reguläre Ausdrücke Muster suchen Muster finden Perl-Praxis Reguläre Ausdrücke 2/19 zur Erinnerung Perl := Practical

Mehr

2.2 Syntax, Semantik und Simulation

2.2 Syntax, Semantik und Simulation 2.2 Syntax, Semantik und Simulation Ein Java Programm ist eine Folge von Buchstaben. Nicht jede Folge von Buchstaben ist ein korrektes Java Programm! Wie kann man alle korrekten Java Programme beschreiben?

Mehr

17. Rekursion 2. Bau eines Taschenrechners, Ströme, Formale Grammatiken, Extended Backus Naur Form (EBNF), Parsen von Ausdrücken

17. Rekursion 2. Bau eines Taschenrechners, Ströme, Formale Grammatiken, Extended Backus Naur Form (EBNF), Parsen von Ausdrücken 564 17. Rekursion 2 Bau eines Taschenrechners, Ströme, Formale Grammatiken, Extended Backus Naur Form (EBNF), Parsen von Ausdrücken Motivation: Taschenrechner 565 Beispiel Eingabe: 3 + 5 Ausgabe: 8 Binäre

Mehr

Formale Sprachen. Anwendungen formaler Sprachen Adressen, Kaffeeautomaten, Programmiersprachen. Rudolf Freund, Marian Kogler

Formale Sprachen. Anwendungen formaler Sprachen Adressen, Kaffeeautomaten, Programmiersprachen. Rudolf Freund, Marian Kogler Formale Sprachen Anwendungen formaler Sprachen Adressen, Kaffeeautomaten, Programmiersprachen Rudolf Freund, Marian Kogler (http://xkcd.com/208) Gültige Adressen: Favoritenstraße 9, 1040 Wien Reumannplatz

Mehr

Version 1.00h (13. 04. 2008)

Version 1.00h (13. 04. 2008) Tutorial: Regex Version 1.00h (13. 04. 2008) Seite 1 von 15 Inhaltsverzeichnis 1. Was ist Regex?... 3 2. Verwendung von Regex in C#... 3 3. Funktionen von Regex... 3 4. Syntax von Regex... 4 4.1 Einfachstes

Mehr

Vorkurs Informatik WiSe 17/18

Vorkurs Informatik WiSe 17/18 Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Nicole Naczk, 05.10.2017 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2017

Mehr

Michael Fitzgerald, Einstieg in Reguläre Ausdrücke, O Reilly, ISBN D3kjd3Di38lk323nnm

Michael Fitzgerald, Einstieg in Reguläre Ausdrücke, O Reilly, ISBN D3kjd3Di38lk323nnm D3kjd3Di38lk323nnm Michael Fitzgerald, Einstieg in Reguläre Ausdrücke, O Reilly, ISBN 97838689994029783868999402 Inhalt Vorwort.... 1 Was ist ein regulärer Ausdruck?... 1 Ein Anfang mit Regexpal... 2 Eine

Mehr

Die Klasse MiniJava ist in der Datei MiniJava.java definiert:

Die Klasse MiniJava ist in der Datei MiniJava.java definiert: Die Klasse MiniJava ist in der Datei MiniJava.java definiert: import javax.swing.joptionpane; import javax.swing.jframe; public class MiniJava { public static int read () { JFrame f = new JFrame (); String

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik Sommersemester 2017 20.04.2017 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt Organisatorisches Literatur Motivation und Inhalt Kurzer

Mehr

Reguläre Ausdrücke in Python

Reguläre Ausdrücke in Python Wintersemester 2009/2010 1 Metazeichen, Quantoren, Gruppierung 2 findall, finditer 3 sub, subn 4 split 5 Match Objects 6 greedy 7 Gruppen-Namen 8 Assertions Reguläre Ausdrücke Reguläre Ausdrücke Reguläre

Mehr

Perl Regular Expressions in Base SAS

Perl Regular Expressions in Base SAS Webinar@Lunchtime Perl Regular Expressions in Base SAS Perl Reguläre Ausdrücke (Perl Regular Expressions) Einleitung Perl Regulare Ausdrücke beschreiben einen Text, der als Muster dient. In einem solchen

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 18.4.07, Grundlagen Übersicht 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White Space Zeichen 4 Wortsymbole 5 Interpunktionszeichen 6 Operatoren 7 import Anweisungen 8 Form

Mehr

C. Ortseifen: Reguläre Ausdrücke

C. Ortseifen: Reguläre Ausdrücke Inhalt Reguläre Ausdrücke mit SAS Einsatz der RX- und PRX-Funktionen Dr. Carina Ortseifen SAS-Treff am URZ 2. Dezember 2005 1. Einleitung 2. Aufbau der regulären Ausdrücke 3. Beispiele 4. Reguläre Ausdrücke

Mehr

Algorithmen und Datenstrukturen II

Algorithmen und Datenstrukturen II Algorithmen und Datenstrukturen II D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Sommer 2009, 26. März 2009, c 2009 D.Rösner D.

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik Sommersemester 2015 16.04.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt Organizatorisches Literatur Motivation und Inhalt Kurzer

Mehr

UNIX Power Tools. Helferlein für den Alltag. Maximilian Haupt

UNIX Power Tools. Helferlein für den Alltag. Maximilian Haupt UNIX Power Tools Helferlein für den Alltag Maximilian Haupt mhaupt@cs.uni-magdeburg.de Fakultät für Informatik, Otto-von-Guericke-Universität Magdeburg Magdeburg, 28. Oktober 2008 1 Reguläre Ausdrücke

Mehr

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird. Thomas Studer Relationale Datenbanken: Von den theoretischen Grundlagen zu Anwendungen mit PostgreSQL Springer, 2016 ISBN 978-3-662-46570-7 Dieser Foliensatz darf frei verwendet werden unter der Bedingung,

Mehr

Übersicht. Einführung in Perl Mustersuche III/ Datentypen II. Mehrzeiliges Matching (1) Mehrzeiliges Matching (2) chomp

Übersicht. Einführung in Perl Mustersuche III/ Datentypen II. Mehrzeiliges Matching (1) Mehrzeiliges Matching (2) chomp Einführung in Perl Mustersuche III/ Datentypen II Universität Stuttgart Institut für maschinelle Sprachverarbeitung http://www.ims.uni-stuttgart.de/lehre/teaching/2003-ws/perl/home.html Heike.Zinsmeister@ims.uni-stuttgart.de

Mehr

Perl. Unser erstes Programm. Grundaufbau eines Programms

Perl. Unser erstes Programm. Grundaufbau eines Programms Programmierkurs für absolute Anfänger erste Perl-Programme Caren Brinckmann Sommersemester 2005 http://www.coli.uni-saarland.de/~cabr/teaching.php Perl Entwickler: Larry Wall backronyms: Practical Extraction

Mehr

MySQL Informationsgewinnung Teil 3. Stefan Maihack Dipl. Ing. (FH) Datum:

MySQL Informationsgewinnung Teil 3. Stefan Maihack Dipl. Ing. (FH) Datum: MySQL Informationsgewinnung Teil 3 Stefan Maihack Dipl. Ing. (FH) Datum: 18.6.2013 Mustervergleich Problem: Der gesuchte Datensatz ist nur teilweise bekannt Beispiel: alle Bücher zum Thema MySQL exakter

Mehr

Tag 2 Repetitorium Informatik (Java)

Tag 2 Repetitorium Informatik (Java) Tag 2 Repetitorium Informatik (Java) Dozent: Daniela Novac Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Zeichen und

Mehr

Kapitel IV Formale Sprachen und Grammatiken

Kapitel IV Formale Sprachen und Grammatiken Kapitel IV Formale Sprachen und Grammatiken 1. Begriffe und Notationen Sei Σ ein (endliches) Alphabet. Dann Definition 42 1 ist Σ das Monoid über Σ, d.h. die Menge aller endlichen Wörter über Σ; 2 ist

Mehr

Die Klasse string Verfasser: Christian Bartl

Die Klasse string Verfasser: Christian Bartl Die Klasse string Verfasser: Index 1. Allgemein... 3 2. Eingabe von Strings... 3 3. Ausgabe von Strings... 4 4. Länge eines Strings... 4 5. Durchlaufen aller Zeichen eines Strings... 4 6. Kopieren von

Mehr

Übersicht. Einführung in Perl Operatoren - Richtigstellung Mustersuche II. Richtigstellung Operatoren (2) Richtigstellung Operatoren (1)

Übersicht. Einführung in Perl Operatoren - Richtigstellung Mustersuche II. Richtigstellung Operatoren (2) Richtigstellung Operatoren (1) IMS Einführung in Perl Operatoren - Richtigstellung Mustersuche II Universität Stuttgart Institut für maschinelle Sprachverarbeitung http://www.ims.uni-stuttgart.de/lehre/teaching/2003-ws/perl/home.html

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 22 Einstieg in die Informatik mit Java Grundlagen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 22 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White

Mehr

Wozu braucht man das? (1) Wozu braucht man das? (2)

Wozu braucht man das? (1) Wozu braucht man das? (2) Programmierkurs für absolute Anfänger Reguläre Ausdrücke / regular expressions Wozu braucht man das? (1) Caren Brinckmann Sommersemester 2005 http://www.coli.uni-saarland.de/~cabr/teaching.php Programmierkurs

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Einführung in die Theoretische Informatik Woche 7 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Zusammenfassung Zusammenfassung der letzten LV 1 Wir betrachten die folgende Signatur

Mehr

Suchen & Ersetzen in umfangreichen Dokumentenbeständen

Suchen & Ersetzen in umfangreichen Dokumentenbeständen Suchen & Ersetzen in umfangreichen Dokumentenbeständen Dipl.-Math. Klaus Stolte Klaus.Stolte@tfk.de tekom-regionalgruppentreffen, München, 18.05.2010 Thematische Eingrenzung» Dokumentübergreifendes Suchen

Mehr

Einführung in Perl Übersicht Operatoren Mustersuche I Autoinkrement und Autodekrement Autoinkrement und Autodekrement Bsp

Einführung in Perl Übersicht Operatoren Mustersuche I Autoinkrement und Autodekrement Autoinkrement und Autodekrement Bsp Übersicht Ergänzendes zu Operatoren Autoinkrement ++ und Autodekrement - logisches und && und oder Ordnung von Operatoren Reguläre Ausdrücke Diamantoperator Perl, 31.10.03 Mustersuche I 1 Autoinkrement

Mehr