Bonjour,
Je cherche à obtenir avec cette chaine
cHaine1 Chaine 2 ChAInE3 ce résultat:
CHAINE1 Chaine2 Chaine3
C'est à dire 1er mot en majuscules ainsi que l'initiale des suivants. Tout le reste en minuscules
Merci d'avance de votre aide
Bonjour,
Je cherche à obtenir avec cette chaine
cHaine1 Chaine 2 ChAInE3 ce résultat:
CHAINE1 Chaine2 Chaine3
C'est à dire 1er mot en majuscules ainsi que l'initiale des suivants. Tout le reste en minuscules
Merci d'avance de votre aide
Bonjour
Il existe des fonctions php comme strtoupper et ucwords pour ce genre de choses.
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.
Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]
Bonjour,
Tu fais un explode de ta chaine en plusieurs segments
Premier segment en majuscules par strtoupper,
Les autres avec une expression régulière.
Meuuh en AI à l'INRA
Domaines: {java, php, js, jquery}{hibernate, doctrine}{MyLib, symfony, Zend}
fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes (balise à cliquer en bas de l'écran)
juste pour le fun:
il est possible egalement de le faire avec une seul reg et un explode dasn le callback suivi d'un arraymap
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 <?php header('Content-Type: text/html; charset=utf-8'); function bar($matches){ $res= strtoupper($matches[0]); return $res; } function foo($matches){ $res= ucfirst(strtolower($matches[0])); return $res; } $chaine="cHaine1 Chaine2 ChAInE3"; $reg2="#\w+#ui"; $res=preg_replace_callback($reg2,"foo",$chaine); $reg="#^[a-z0-9]+#ui"; $res=preg_replace_callback($reg,"bar",$res); ?> <!DOCTYPE html PUBLIC "-//WC//DTD XHTML 1.0 Strict//EN" "http://www.w3c.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3c.or/1999/xhtml" xml:lang="fr" lang="fr"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title> </tile> </head> <body> <?php echo $res; ?> </body> </html>
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag
Venez sur le Chat de Développez !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager