Avatar billede heavybreezer Nybegynder
10. januar 2008 - 16:23 Der er 16 kommentarer

Tælle bogstaver i et ord

Som titlen siger, hvordan tæller jeg antallet af bogstaver i et ord, i java ?
Avatar billede arne_v Ekspert
10. januar 2008 - 16:31 #1
ord.length()

eller ??
Avatar billede heavybreezer Nybegynder
10. januar 2008 - 16:56 #2
jeg har ikke deklareret hver enkelt ord, de bliver talt op.
Avatar billede heavybreezer Nybegynder
10. januar 2008 - 22:02 #3
er der ikke andre måder ?
Avatar billede heavybreezer Nybegynder
10. januar 2008 - 22:06 #4
Eller med andre ord, hvordan får jeg talt antal ord og sat det enkelte aktuelle ord ind i en forløkke ? Så kan man jo eventuelt tælle bogstaverne med charAt(length), ja.
Avatar billede superanden Nybegynder
13. januar 2008 - 14:29 #5
Prøv at forklar dit problem bedre. Arne_v svarer jo helt præcist på dit spørgsmål hvormange tegn der er i en streng, altså hvormange bogstaver i dit ord, såfremt dit ord ligger i en streng.
Gå d fra du har en sætning:

"Jeg kunne godt tænke mig at tælle antal ord"

Hvis du vil tælle antallet af ord så tæller du f.eks. hvormange mellemrum der er og lægger 1 til, det kan du f.eks. bruge charAt eller substring til.

Men du skal lave mere end bare en tæller for hvert mellemrum hvis du så skal bruge ordene bagefter til at finde ud af hvilket der er længst.

Så prøv at forklar dit problem helt fra bunden og helt til slut, nu flere ord jo bedre.
Avatar billede heavybreezer Nybegynder
14. januar 2008 - 10:39 #6
okay . det jeg egentlig gerne vil, er at give ord nummer x i en given streng, med som argument. For derefter at få returnet hvor mange bogstaver der er i ord nummer x .

make sense ?
Avatar billede zenjiin Nybegynder
14. januar 2008 - 13:20 #7
Makes sense to me. Står ordet på samme sted i strengen hver gang eller ved du hvad ordet er på forhånd?
Avatar billede arne_v Ekspert
14. januar 2008 - 13:49 #8
Prøv:

    public static int lengthOfWord(String line, int wordno) {
        return line.split("\\W+")[wordno].length();
    }
Avatar billede heavybreezer Nybegynder
15. januar 2008 - 13:06 #9
Det sidste svar fra arne kan godt bruges, dog kender jeg ikke wordno i min  streng ?
Avatar billede arne_v Ekspert
15. januar 2008 - 15:07 #10
Du kan vel ikke finde laengden af ord nummer x uden at kende x ??

Hvis du vil finde laengde af alle ord, saa laver du bar elidt om paa kode:

String[] alleord = line.split("\\W+");

og koerer en for loekke paa den.
Avatar billede heavybreezer Nybegynder
16. januar 2008 - 12:18 #11
Hvordan kunne sådan en forløkke se ud ?
Avatar billede heavybreezer Nybegynder
16. januar 2008 - 12:19 #12
Sorry, jeg misforstod lidt.. Nej er enig i at jeg ikke kan fidne længden af ord x uden at kende x. Men hvordan kommer jeg til at kende x ?
Avatar billede zenjiin Nybegynder
16. januar 2008 - 14:53 #13
Forstår jeg det ret sådan, at hvis du har en tekst, eksempelvis:

"jeg vil tælle ord"

Så vil du have talt op, at "jeg" har 3 bogstaver, "vil" har 3 bogstaver, "tælle" har 5 og "ord" har 3?
Avatar billede arne_v Ekspert
16. januar 2008 - 15:01 #14
Enten kender du x som i 14/01-2008 13:49:32 koden.

Eller saa goer det det for alle gyldige x (som 16/01-2008 14:53:10 og andel del
af 15/01-2008 15:07:00).
Avatar billede heavybreezer Nybegynder
16. januar 2008 - 20:38 #15
zenjiin >> du har HELT ret :)
Avatar billede zenjiin Nybegynder
16. januar 2008 - 21:52 #16
Okay, det er lang tid siden jeg har skrevet Java, men her er hvordan jeg ville gøre det: (Betragt det som Pseudo-kode)

String TestString = " Dette er den streng der skal tælles på";

String[] splittedString;

splittedString = testString.split(" ");
for(int i = 0; i < splittedString.length(); i++)
{
  system.out.printLn("Ordet: " + splittedString[i] + " har " + splittedString[i].length() + "bogstaver")
}

Okay, det var et hurtigt og med 100% sikkerhed ikke syntaktisk korrekt svar, men jeg håber du selv kan komme videre herfra? Jeg vil gerne  lave en pænere løsning når jeg har et udviklingsmiljø oppe at køre, for mine java - evner er vist lidt rustne. Jeg ville dog mene du får mest ud af, at gå frem selv med det du har her...
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
Kurser inden for grundlæggende programmering

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