PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : preg_replace Suchmuster - wie?


Tristan
15.08.2008, 14:18:10
Moin Leute!

Ich habe zur Zeit ein Problem über das ich irgendwie nicht hinwegkomme.
Ich habe auf meiner Seite zahlreiche Verweise auf Paragrafen. Diese will ich jetzt automatisch verlinken. In der Regel sieht das ja so aus "§ 223 Abs. 1 StGB". Was ich nun extrahiert brauche ist die Zahl nach dem Paragrafenzeichen, also den Paragrafen selbst und das Gesetz. Dabei können das Gesetz je verschiedene sein. Also anstatt StGB kann da auch BGB oder VwGO stehen. Wie kann ich ein Suchmuster stricken, dass das erfasst? Was zwischen der Zahl und dem Gesetz steht (Absätze, Sätze etc.) soll unberücksichtigt bleiben.

Herzlichen Danke für eine Antwort!

Beste Grüße,
Tristan

Xor
15.08.2008, 17:32:42
Hallo Tristan!
Für deinen speziellen Fall bräuchtest du als Regulären Ausdruck:

§ \d* (Abs. \d+)?

Bsp.:

$matches = array();
preg_match("~§ (?P<paragraph>\d+)( Abs. (?P<absatz>\d+))?~",$Suchtext,$matches);
print_r($matches);


UNGETESTET

für mehr Informationen, wie man eine regexp zusammenbaut, hier ein gutes Tutorial (http://regexp-evaluator.de/tutorial/).

mfg

CIX88
20.08.2008, 21:51:16
Gleich mit praktischen Beispiel:
http://www.regex-tester.de/uc_425_de.html