Avatar billede dehdar Nybegynder
01. december 2007 - 00:52 Der er 5 kommentarer og
1 løsning

Hvordan søger man efter et ord i en sætning?

Hej,

Jeg har før prøvet at lave et program, hvor jeg opretter en char array {"tekst"}, hvorefter jeg så gennem en pointer/array i en forløkke kan søge efter bestemte bogstaver i "tekst" og erstatte dem med andre bogstaver eller tal.

Det fik mig til at tænke, om man ikke kan lave noget tilsvarende for ord? Man kunne jo f.eks. skrive en tekst og gemme hvert enkelt ord, som et objekt af "string", men det vil jo være alt for besværligt, så er der ikke en smartere metode?
Avatar billede arne_v Ekspert
01. december 2007 - 01:19 #1
Du skal vel søge efter mellemrum/punktum/komma efterfulgt af ord efterfulgt af
mellemrum/punktum/komma.

Måske var det nemmest at finde en regex pakke !
Avatar billede dehdar Nybegynder
01. december 2007 - 16:22 #2
Så det vil sige, at jeg f.eks. inde i min løkke skal skrive noget i stil med:

(Array[I] == 'h' && Array[I+1] == 'e' && Array[I+3] == 'j' ? ( Array[I] = 'H', Array[I+1] = E, Array[I+2] == J ) : <statement> )

Selvfølgelig skal programmet kodes sådan, at der også bliver tjekket for komma, punktum, mellemrum og ordets størrelse, men er det virkelig måden det laves på?

Jeg troede det kunne gøres meget smartere.
Avatar billede arne_v Ekspert
01. december 2007 - 21:47 #3
Det kan måske laves lidt smartere ved at bruge nogle str funktioner - f.eks. strncasecmp.

Det kan laves meget smartere med regex.
Avatar billede dehdar Nybegynder
01. december 2007 - 23:37 #4
Tusind tak for hjælpen Arne. Når jeg har bestået mine eksamener, så vil jeg sætte mig ind i regex og finde ud af, hvad det er og hvordan det skal bruges :)
Avatar billede arne_v Ekspert
02. december 2007 - 00:02 #5
Du kan jo starte med http://en.wikipedia.org/wiki/Regex
Avatar billede dehdar Nybegynder
06. februar 2008 - 22:35 #6
lukket
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