Matti Maekitalo: reguläre ausdrücke?

Beitrag lesen

use Mosche;

Habe diesen reg. Ausdruck bekommen, der auch super funktioniert hat:

$text =~ s!(?:^|\s)(t\S+)!<b>$1</b>!g;

Ersetzt:
  Zeilenanfang ODER Leerezeichen DANACH t UND eins oder mehr Satzzeichen
Durch:
 '<b>', das Wort mit t und die Satzzeichen danach, '</b>'

Kann mir vielleicht jemand erklären was der Doppelpunkt oder das Fragezeichen da bedeuten ?

Normalerweise sind Klammern da, um den gefundenen Inhalt in \1, \2, (bzw. $1, $2, ...) zu speichern. '?:' veranlasst Perl, den Inhalt nicht zu speichern.

Und warum statt den Slashes Rufzeichen aussen stehen ?

Das ist egal (naja, nicht ganz). Es ist manchmal übersichtlicher, ein anderes Begrenzungszeichen zu verwenden als '/'.

Und warum alles in Klammern steht ?

s.o., um den Inhalt zu speichern.

use Tschoe qw(Matti);