MudGuard: Regexp: Verkürzung möglich?

Beitrag lesen

Hi,

Jetzt kommt in dem Ausdruck ja viermal (bzw. bei mehr Feldern noch öfter) der gleiche Teil vor - kann man das irgendwie kürzer schreiben?
kürzer _schreiben_ kann man es - durch Verwendung von Variablen.

Ok, die Verkürzung bezieht sich dann aber auf das Zeug, das für ein Feld nötig ist, aber auch mit
$f = qr/<(<none>|[^>]*)>-/;
muß ich immer noch m/MARKER-([^-]*)-$f-$f-$f-$f schreiben, ich kann also immer noch keinen Quantifier dafür nutzen, also
m/MARKER-([^-]*)-(?:$f){4} bringt immer noch das "falsche" Resultat.

Effektiv bleibt die RegExp dann natürlich genauso lang. Nach meinem Verständnis der Materie ist eine "echte" Verkürzung über ...

if ($teststring =~ m/MARKER-([^-]*)-(?:<(<none>|[^>]*)>-){4}/)
... hinaus nicht möglich.

Was ja leider nicht identisch ist, da die $2, $3 usw. anders bzw. gar nicht belegt werden.

Du kannst den Code halt lesbarer machen, das ist aber schon alles.

Schade ...

cu,
Andreas

--
Warum nennt sich Andreas hier MudGuard?
Schreinerei Waechter
Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.