preg_replace pour mettre en majuscule une lettre après un devis

J'ai des noms comme ceci:

$str = 'JAMES "JIMMY" SMITH'

- Je exécuter strtolowerpuis ucwordsqui renvoie à ceci:

$proper_str = 'James "jimmy" Smith'

Je tiens à tirer parti de la deuxième lettre de mots dont la première lettre est un guillemet double. Voici la regexp. Il semble strtoupper n'est pas de travailler l'expression renvoie simplement à l'identique de l'expression originale.

$proper_str = preg_replace('/"([a-z])/',strtoupper('$1'),$proper_str);

Des indices? Merci!!

source d'informationauteur Summer | 2010-04-14