Reguliere expressie: verschil tussen versies

Verwijderde inhoud Toegevoegde inhoud
k opm
Xqbot (overleg | bijdragen)
k robot Anders: ar:عبارة اعتيادية; cosmetische veranderingen
Regel 5:
Een eenvoudige variant van de reguliere expressie is in veel besturingssystemen te vinden als de [[jokerteken]]s die gebruikt kunnen worden bij het zoeken naar [[computerbestand|bestandsnamen]].
 
== Basisconcepten ==
Een reguliere expressie omschrijft een verzameling tekenreeksen ([[String (informatica)|strings]]) zonder ze allemaal op te noemen. De drie strings ''Handel'', ''Händel'' en ''Haendel'' kunnen bijvoorbeeld beschreven worden met het patroon “H(a|ä|ae)ndel”.
 
Gewone letters en cijfers in de reguliere expressie herkennen hetzelfde teken in de te vinden tekenreeks. Een aantal tekens hebben speciale betekenis:
* Een punt ('''.''') staat voor een willekeurig teken, behalve het teken voor een newline ('''\n''').
* Vierkante haken geven een lijst van mogelijke tekens: '''['''abc''']'''.
** Binnen vierkante haken staat een minteken voor een reeks: '''['''a'''-'''zA'''-'''Z''']''' is het patroon waarmee alle letters “gevangen” worden.
** Een dakje als eerste teken binnen de vierkante haken verandert de tekenverzameling in het omgekeerde: '''[^'''0-9''']''' herkent alles wat geen cijfer is.
* Een dakje ('''^''') staat voor het begin van de regel.
* Een dollarteken ('''$''') staat voor het eind van de regel.
 
Deze basiselementen kunnen worden gecombineerd met de volgende constructies:
Regel 36:
De precieze syntaxis varieert enigszins tussen de verschillende programma’s, maar de bovenstaande komen het meeste voor.
 
== Wiskunde ==
De reguliere expressies komen voort uit de [[wiskundige logica]], meer bepaald de theorie van de [[Formele taal|formele talen]]. Ze zijn uitgevonden door de Amerikaanse wiskundige [[Stephen Cole Kleene]] als methode om [[reguliere taal|reguliere talen]] te beschrijven.
 
Regel 63:
Het blijkt dat de taal <math>L(R)</math> van een reguliere expressie <math>R</math> altijd een [[reguliere taal]] is.
 
== Zie ook ==
* [[Stephen Cole Kleene]], [[Henry Spencer]]
* [[ed (editor)|ed]], [[expr]], [[awk]], [[Emacs]], [[Vi (Unix)|vi]], [[lex]], [[Apache (webserver)|Apache]], [[POSIX]]
* [[SNOBOL]], [[Perl (programmeertaal)|Perl]], [[Programmeertaal Python|Python]], [[PHP]]
* [[eindigetoestandsautomaat]], [[reguliere taal]], [[Kleene-ster]]
 
== Externe links ==
* [http://analyser.oli.tudelft.nl/regex/index.html.nl analyser.oli.tudelft.nl] Tutorial van TUDelft
* {{en}} [http://www.regexlib.com/ www.regexlib.com] Bibliotheek met expressies
Regel 75:
 
{{bron|bronvermelding=
* [[Jeffrey Friedl]]. ''[http://regex.info/ Mastering Regular Expressions]'', [[O’Reilly Media|O’Reilly]], ISBN 0-596-00289-0
* John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman (2001).''Introduction to Automata Theory, Languages, and Computation''. Addison Wesley.
}}
 
[[Categorie:Formele taal]]
 
[[ar:تعبيرعبارة قياسياعتيادية]]
[[bg:Регулярен израз]]
[[ca:Expressió regular]]