Matti Maekitalo: erster Buchstabe groß

Beitrag lesen

use Mosche;

ich suche nach einer Möglichkeit, immer den ersten Buchstaben jedes Wortes durch einen Großbuchstaben zu ersetzen. Habe dazu bisher leider nichts finden können.

$text = "BLA_BLA_BLA_BLA";
$text = lc($text);

ergibt zunächst "bla_bla_bla_bla", ok

versucht habe ich folgendes:

$text =~ s/([^a-z]?)([a-z]?)/$1...../;
              ^^^     ^^^    ^^   ^^
               a       b      c    d

a) NICHT-Buchstabe finden.
b) Buchstabe finden.
c) NICHT-Buchstabe einsetzen.
d) Buchstabe einsetzen (hier weiß ich auch nicht, welcher Schalter das groß macht)

$text =~ s/([a-z])/uc($1)/e;

das e bedeutet eval (oder irgendwas ähnliches...) und heisst, dass im Regex enthaltene Funktionen afgerufen werden. Hier rufst du die Funktion uppercase (uc) auf. Eigentlich selbsterklärend.

Es gibt _sicherlich_ eine schönere Variante...

use Tschoe qw(Matti);