Ja, stimmt schon, das wesentliche wird erledigt.
Gestört hat mich allerdings das letzte Leerzeichen.
Eine allgemeinere Formulierung ist diese:
</font><blockquote><font size="1" face="Verdana, Helvetica, sans-serif">Code:</font><hr /><pre style="font-size:x-small; font-family: monospace;">$s=' WhrgRsG#f@rt sagte Obelix, nachdem er sich V_E_R_L_I_E_B_T hatte ';
$r='((?:S+(?:s(?=S))?)+)';
$s=~/^s*$rs{2,}$rs*$/;
print '|'.$1.'|'.$2.'|';[/code]</blockquote><font size="2" face="Verdana, Helvetica, sans-serif">Es ist egal, ob dem ersten Zeichen in $s beliebige Leerzeichen vorangehen
oder dem letzten welche folgen oder nicht, es muß nur Deine Struktur vorliegen:
Erster Teilstring, bestehend aus mindestens einem Zeichen, optional
beliebig vielen durch jeweils ein Leerzeichen getrennten Zeichengruppen,
getrennt durch mindestens zwo Leerzeichen vom zwoten Teilstring,
der genauso beschaffen ist wie der erste.
Ist diese Struktur gegeben, werden in $1 und $2 exact diese beiden
Teilstrings eingefangen (es sind also keine nachträglichen Bereinigungen
notwendig), ansonsten sind sowohl $1 als auch $2 leer -
was ich ganz praktisch finde bei der Suche nach etwaig fehlerhaften
Strukturen.
Soll heißen:
Im Extremfall kann
</font><blockquote><font size="1" face="Verdana, Helvetica, sans-serif">Code:</font><hr /><pre style="font-size:x-small; font-family: monospace;">$s='a b';[/code]</blockquote><font size="2" face="Verdana, Helvetica, sans-serif">oder
</font><blockquote><font size="1" face="Verdana, Helvetica, sans-serif">Code:</font><hr /><pre style="font-size:x-small; font-family: monospace;">$s=' a b ';[/code]</blockquote><font size="2" face="Verdana, Helvetica, sans-serif">oder auch
</font><blockquote><font size="1" face="Verdana, Helvetica, sans-serif">Code:</font><hr /><pre style="font-size:x-small; font-family: monospace;">$s=' a b ';[/code]</blockquote><font size="2" face="Verdana, Helvetica, sans-serif">sein,
- aber nicht:
</font><blockquote><font size="1" face="Verdana, Helvetica, sans-serif">Code:</font><hr /><pre style="font-size:x-small; font-family: monospace;">$s='a b';[/code]</blockquote><font size="2" face="Verdana, Helvetica, sans-serif">oder auch:
</font><blockquote><font size="1" face="Verdana, Helvetica, sans-serif">Code:</font><hr /><pre style="font-size:x-small; font-family: monospace;">$s='a ';[/code]</blockquote><font size="2" face="Verdana, Helvetica, sans-serif">oder last, but very not least:
</font><blockquote><font size="1" face="Verdana, Helvetica, sans-serif">Code:</font><hr /><pre style="font-size:x-small; font-family: monospace;">$s='a bb ccc';[/code]</blockquote><font size="2" face="Verdana, Helvetica, sans-serif">gruß
matho
<small>[ 18-06-2002, 23:28: Beitrag editiert von: matho ]</small>