Regex: Unterschied zwischen den Versionen
Aus exmediawiki
Mattis (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „=Beschreibung= (englisch regular expression, Abkürzung RegExp oder Regex) Reguläre Ausdrücke können als Filterkriterien in der Textsuche verwendet werden,…“) |
Mattis (Diskussion | Beiträge) |
||
Zeile 12: | Zeile 12: | ||
pattern = '[0-9]'<br> | pattern = '[0-9]'<br> | ||
string = 'text with 3 numbers, no just 2.'<br> | string = 'text with 3 numbers, no just 2.'<br> | ||
− | string = re.sub(pattern, '', string)<br> | + | string = re.sub(pattern, '<nowiki/>'<nowiki/>, string)<br> |
=> text with numbers, no just . | => text with numbers, no just . | ||
Zeile 19: | Zeile 19: | ||
pattern = '[a-d,f]'<br> | pattern = '[a-d,f]'<br> | ||
string = 'abcdefgh'<br> | string = 'abcdefgh'<br> | ||
− | string = re.sub(pattern, '', string)<br> | + | string = re.sub(pattern, '<nowiki/>'<nowiki/>, string)<br> |
=> egh | => egh | ||
Zeile 26: | Zeile 26: | ||
pattern = '[a-z,A-Z]'<br> | pattern = '[a-z,A-Z]'<br> | ||
string = 'abcd4262456e26ghABC124'<br> | string = 'abcd4262456e26ghABC124'<br> | ||
− | string = re.sub(pattern, '', string)<br> | + | string = re.sub(pattern, '<nowiki/>'<nowiki/>, string)<br> |
=> 426245626124 | => 426245626124 | ||
Zeile 33: | Zeile 33: | ||
pattern = '<(.*?)>'<br> | pattern = '<(.*?)>'<br> | ||
string = 'some content without < some unimportant stuff > stuff'<br> | string = 'some content without < some unimportant stuff > stuff'<br> | ||
− | string = re.sub(pattern, '', string)<br> | + | string = re.sub(pattern, '<nowiki/>'<nowiki/>, string)<br> |
=> some content without stuff<br> | => some content without stuff<br> | ||
− | |||
=Links= | =Links= |
Version vom 30. September 2019, 21:07 Uhr
Beschreibung
(englisch regular expression, Abkürzung RegExp oder Regex) Reguläre Ausdrücke können als Filterkriterien in der Textsuche verwendet werden, indem der Text mit dem Muster des regulären Ausdrucks abgeglichen wird. Dieser Vorgang wird auch Pattern Matching genannt. So ist es beispielsweise möglich, alle Wörter aus einer Wortliste herauszusuchen, die mit S beginnen und auf D enden, ohne die dazwischen liegenden Buchstaben oder deren Anzahl explizit vorgeben zu müssen. (https://de.wikipedia.org/wiki/Regul%C3%A4rer_Ausdruck)
Beispiele
(Python)
import re
remove digits
pattern = '[0-9]'
string = 'text with 3 numbers, no just 2.'
string = re.sub(pattern, '', string)
=> text with numbers, no just .
remove some letters
pattern = '[a-d,f]'
string = 'abcdefgh'
string = re.sub(pattern, '', string)
=> egh
remove all letters
pattern = '[a-z,A-Z]'
string = 'abcd4262456e26ghABC124'
string = re.sub(pattern, '', string)
=> 426245626124
remove everything within < and >
pattern = '<(.*?)>'
string = 'some content without < some unimportant stuff > stuff'
string = re.sub(pattern, '', string)
=> some content without stuff
Links
Online Regex Tester