Markus: String konvertieren

hi,

ich möchte die anfangsbuchstaben eines strings groß-schreiben - der rest klein.

mit ucwords() gehts eh ganz gut, nur leider reagiert der auf "-" (bindestriche) nicht.

hat irgendjemand eine idee, wie es "schön" geht.

"unschön" mit zB einer foreach ( explode("-", $String) as $Value ) -> gefällt mir nicht so gut.

gibts da ein schönes RegEx?
Ausserdem sollten etwaige " " (leerzeichen) vor den "-" bleiben.
zB aus: markus lechner-müller WIRD Markus Lechner-Müller
und aus: JoacHim - jOhnAthan  WIRD Joachim - Johnathan

thx in advance,
Markus

  1. hi,

    ich hab mich mal gespielt - kurz:

    $neuerString = str_replace(" |] - [| ", "-",ucwords(strtolower(str_replace("-", " |] - [| ",$String))));

    so hab ich es gemacht. das gefällt mir eigentlich ganz gut. -> KRITIKER VOR!

    ciao,
    markus