20. november 2004 - 11:19
Der er
16 kommentarer og 1 løsning
preg_replace, alle ord skal starte med stort
hvordan kan jeg få alle ord til at starte med stort? JEG er EN aNSjos Til reg EXp. => Jeg Er En Ansjos Til Reg Exp.
Annonceindlæg fra HP
20. november 2004 - 11:36
#1
$foo = 'hello world!'; $foo = ucwords($foo);
20. november 2004 - 12:02
#2
ucwords() er ikke nok. Du kan se forskellen her. Kan være du skal bruge en anden locale: $str = "KLE lkd ÅÆnØ låse øVE!"; echo ucwords($str)."<br />"; setlocale (LC_ALL, 'da_DK.ISO8859-1'); echo ucwords(strtolower($str));
20. november 2004 - 12:14
#3
er det nødvendigt med den her? setlocale (LC_ALL, 'da_DK.ISO8859-1'); jeg synes ikke at se nogen forskel?
20. november 2004 - 12:18
#4
Jeg glemte lige en ting. Ord som starter lige efter ( ) eller - skal også starte med store bogstaver $str = "KLE lkd ÅÆnØ-låse (øVE)!";
20. november 2004 - 12:32
#5
Så skulle den være der. Du kan prøve nogle forskellige locales: da da_DK danish dan <?php $str = "KLE lkd ÅÆnØ-låse (øVE)!"; setlocale (LC_ALL, 'da_DK.ISO8859-1'); print '<p style="text-transform:capitalize">'; print ucwords(strtolower($str)); print '<p>'; ?>
20. november 2004 - 12:42
#6
kan det ikke lade sig gøre at lave udelukkende i PHP? ;)
20. november 2004 - 12:44
#7
Sikkert, men jeg kan ikke lige :)
20. november 2004 - 12:58
#8
$str = preg_replace( "/([^|\W]\w)/e", "ucwords(\${1})", strtolower($str) );
20. november 2004 - 12:59
#9
ups - nej, prøver igen
20. november 2004 - 13:12
#10
Hvorfor ikke bare: $str = ucwords(strtolower($str));
20. november 2004 - 13:13
#11
er prøvet 12:02:39
20. november 2004 - 13:14
#12
Ja, men det fungerer da!
20. november 2004 - 13:17
#13
ikke her KLE lkd ÅÆnØ-låse (øVE) bliver til Kle Lkd Åænø-låse (øve)! (øve) skal være (Øve)og -låse skal være -Låse
20. november 2004 - 13:18
#14
Ikke når der er - eller(). Den her skulle virke: function MinUCWords($str) { $stop = TRUE; for ($i=0;$i<strlen($str);$i++) { $karakter = substr($str,$i,1); if (((ord($karakter) > 64) && (ord($karakter) < 91)) || ((ord($karakter) > 47) && (ord($karakter) < 58)) || ((ord($karakter) > 96) && (ord($karakter) < 123)) || (ord($karakter) == 230) || (ord($karakter) == 248) || (ord($karakter) == 229) || (ord($karakter) == 198) || (ord($karakter) == 216) || (ord($karakter) == 197)) { if ($stop) { $nystr .= strtoupper($karakter); } else { $nystr .= strtolower($karakter); } $stop = FALSE; } else { $nystr .= $karakter; $stop = TRUE; } } return $nystr; } echo MinUCWords($str);
20. november 2004 - 13:20
#15
I see!
20. november 2004 - 15:58
#16
hmortensen > ok... jeg tror bare jeg holder mig til løsningen i CSS ;) lav et svar
21. november 2004 - 18:48
#17
Ok :)
Vi tilbyder markedets bedste kurser inden for webudvikling