Avatar billede dknsj Nybegynder
10. november 2004 - 17:09 Der er 10 kommentarer og
2 løsninger

opdele ord

HEY!

Mit spørgsmål er så hvordan kan jeg dele ord op så jeg har dem i en while lykke.

f.eks. ordet "en milkshake smager godt", skal deles op i en while lykke så den udskriver den som en, milkshake, smager, godt

hvis du ikke lige har forstået mit spørgsmål ordenligt så bare skriv det ;) der er anlagt 80 point til den første der svare med et svar der virker ;)
Avatar billede mjense173 Nybegynder
10. november 2004 - 17:14 #1
$saetning = "en milkshake smager godt";
$ord = split(" ",$saetning);
for($i=0;$i<count($ord);$i++){
echo $ord[$i]."<br>\n";
}
Avatar billede Slettet bruger
10. november 2004 - 17:15 #2
$ny_string = "en milkshake smager godt";
$nyt_array explode(" ", $ny_string);
$size = count($nyt_array);
$n = 0;
while ($n < $size) {
  echo $nyt_array[$n];
  $n++;
  if {$n = $size) {
    echo " ";
  }
}

---------------

Du kan dog med fordel bruge en fro-løkke i stedet..
Avatar billede Slettet bruger
10. november 2004 - 17:16 #3
if {$n = $size)

skulle selfølgelig have været

  if {$n != $size)
Avatar billede dknsj Nybegynder
10. november 2004 - 17:18 #4
Prøver, så acceptere jeg hvis det virker ;)
Avatar billede dknsj Nybegynder
10. november 2004 - 17:18 #5
send jer nogle svar ;)
Avatar billede Slettet bruger
10. november 2004 - 17:20 #6
svar...

fordelen ved mit exemple er at den udskriver mellemrum mellem ordene men ikke efter sætningen...
Ulempen er at det er en while-løkke, men det var jo det du bad om..

Så hvis du kombinerer de 2 eksempler vil jeg mene du har den bedste løsning..
Avatar billede mjense173 Nybegynder
10. november 2004 - 17:21 #7
//Denne ville også virke:

$saetning = "en milkshake smager godt";
echo str_replace(" ",", ",trim($saetning));

//udskriver:

en, milkshake, smager, godt
Avatar billede Slettet bruger
10. november 2004 - 17:22 #8
der mangler for øvrigt lige et = i 2. linie i mit eksempel..
Avatar billede Slettet bruger
10. november 2004 - 17:34 #9
i
  if {$n != $size)

skulle den første parantes selvfølgelig have været ( og ikke {

beklager mine fejl..
Her er koden igen, rettet og med for-løkke i stedet:

$ny_string = "en milkshake smager godt";
$nyt_array = explode(" ", $ny_string);
$size = count($nyt_array);
for ($n = 1; $n < $size; $n++) {
  echo $nyt_array[$n];
  if (($n + 1) < $size) {
    echo " ";
  }
}
Avatar billede dknsj Nybegynder
10. november 2004 - 17:41 #10
I kan dele pointene ;)
Avatar billede Slettet bruger
10. november 2004 - 17:44 #11
yep.. :-)
Avatar billede mjense173 Nybegynder
10. november 2004 - 17:48 #12
Tak
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester