Björn: "HALLO DU" in "Hallo Du" umwandeln

Hallo!

Wie kann ich einen String mit mehreren Wörtern, der nur aus Grossbuchstaben besteht so umwandeln, dass alle Wörter klein geschrieben sind und nur mit einem Grosbuchstaben anfangen?

Beispiel:
$a="HALLO DU"

Rauskommen soll:
"Hallo Du"

Kann jemand helfen? Vielen Dank!

  1. Hallo,

    Wie kann ich einen String mit mehreren Wörtern, der nur aus Grossbuchstaben
    besteht so umwandeln, dass alle Wörter klein geschrieben sind und nur mit
    einem Grosbuchstaben anfangen?

    Beispiel:
    $a="HALLO DU"

    Rauskommen soll:
    "Hallo Du"

    Vielleicht so:

    $text =~ s/\b([a-z])([a-z]+?)\b/uc($1).lc($2)/eg;

    Gruesse,
     CK

    1. Hoi,

      $text =~ s/\b([a-z])([a-z]+?)\b/uc($1).lc($2)/eg;

      Hier fehlt noch ein 'i' als Modifier:

      $text =~ s/\b([a-z])([a-z]+?)\b/uc($1).lc($2)/gei; #l

      Gruesse,
       CK