Beat: REs zusammenbauen

Beitrag lesen

$suchmuster = '/NeedsAndRightsByKnightTitle[KnightTitles.Mayor][\ .]=[\ \s]{[\ \s][A-Za-z\ .]+,[\ \s](?:nil[\ \s]|{+[\ \s][A-Za-z,\ .\s]+[\ \s]}+)[\ \s],[\ \s][A-Za-z\ .]+[\ \s],[\ \s]{+[A-Za-z\ _,.\s]}[\ \s],[\ \s][A-Za-z]+[\ \s]*}/s';
preg_match($suchmuster, $luafile, $treffer, PREG_OFFSET_CAPTURE);


>   
> Funktioniert soweit wie es soll.  
> Kann man das ggf. noch vereinfachen/ optimieren?  
  
Hi Gunther  
  
Leider kenne ich PHP nur aus meinen gelegentlichen Handbuchkonsultationen.  
Selber bleibe ich wohl Perl treu, bis ein anderer Fall mir die Beschäftigung mit PHP nahelegt.  
  
Ich bin überzeugt, dass es auch in PHP eine Möglichkeit gibt, REs wie in meinem Beispiel übersichtlich zusammenzubasteln.  
  
Das Wichtigste ist wohl, dass du sie vor dem Schleifendurchgang zusammenbastelst. Dazu gibt in Perl eben die qr// Syntax.  
  
Ich vermute, du könntest in PHP etwas analoges machen mit:  
  
$suchpart\_1 = '[0-9]';  
$suchpart\_2 = '[a-z\ ]+';  
$suchmuster = '/'  
            . $suchpart\_1  
            . '('  
            .    $suchpart\_2  
            . ')'  
            . '/';  
  
Mach mal einen Test. Sieht doch übersichtlich aus...  
  
mfg Beat

-- 
Woran ich arbeite:  
[X-Torah](http://www.elcappuccino.ch/cgi/tok.pl?extern=1-pub-com3306-1)  
   <°)))o><                      ><o(((°>o