Avatar billede smxxx Nybegynder
27. august 2005 - 17:26 Der er 19 kommentarer og
2 løsninger

Søgemaskine til teksfil.

Hej, mangler en "søgemaskine" der kun søger på en enkelt side.
Har en 10 mb tekstfil der skal kunne søges i.
Avatar billede softspot Forsker
27. august 2005 - 22:13 #1
Alt efter hvordan du skal bruge resultatet, så lyder det som en opgave for en StringReader...

Prøv evt. at forklare lidt mere om hvordan du skal bruge det.
Avatar billede smxxx Nybegynder
28. august 2005 - 16:31 #2
Hej. ikke så meget inde i det, men jeg skal bruge noget, der kan søge efter ord, eller sætninger.
Ligesom i et Word dokument.
Avatar billede softspot Forsker
28. august 2005 - 16:36 #3
Hvordan skal du bruge resultatet?

Skal den bare kunne meddele om et eller flere ord findes?
Skal den kunne fortælle hvormange gange de forskellige ord findes?
Skal den kunne vise hvor de findes?
osv.

Som du kan se er der lidt flere overvejelser som skal gøres for at du kan få en løsning der matcher dine behov... :)
Avatar billede smxxx Nybegynder
29. august 2005 - 09:16 #4
Hej, beklager tiden.
Jag havde tænkt mig at den gik lige til ordet, i dokumentet.
Avatar billede softspot Forsker
29. august 2005 - 09:34 #5
Det må så næsten betyde at du har dokumentet indlæst i hukommelsen...? I så fald kan du benytte funktionen IndexOf, som finde den første forkomst af en tekst efter et givent punkt (så kan du lave inkrementalsøgning baseret på den forrige position i teksten).

Noget á la (i C#):

int thisPos = tekst.IndexOf(tekstenDerSkalFindes,curPos+1);
curPos = thisPos;

hvor curPos holder positionen på den forrige søgning (og -1 som udgangspunkt).
Avatar billede softspot Forsker
29. august 2005 - 09:36 #6
Da det nu er en webapp, skal det jo også ud til brugeren, men der har du nok ikke tænkt dig at sende alle 10Mb ud til brugeren, så det må være noget med at sende en parameter frem og tilbage mellem klienten der fortæller den aktuelle position i teksten, som så kan bruges som illustreret ovenfor.
Avatar billede smxxx Nybegynder
29. august 2005 - 09:38 #7
Tror jeg ikke har forklaret det "helt" tydeligt...
Filen ligger på min hjemmeside, og søgefunktion, skulle ligges ind i html.

Beklager, hvis der er forvirring.
Avatar billede softspot Forsker
29. august 2005 - 09:43 #8
Ja, men hvordan skal brugeren præsenteres for resultatet? Jeg kan forestille mig nogle løsningsmuligheder, men jeg savner en beskrivelse fra dig på hvad du ønsker der skal ske, dvs. hvad brugeren skal opleve... :)
Avatar billede smxxx Nybegynder
29. august 2005 - 09:46 #9
Vedkommende, skal når han søger efter et ord/sætning, hoppe til stedet i dokumentet.
Avatar billede softspot Forsker
29. august 2005 - 09:56 #10
OK, så hele dokumentet skal ud til brugerens browser? Hvis det er tilfældet, så er det mere en clientscript opgave end en .NET opgave, men ikke desto mindre muligt på nogenlunde samme måde...
Avatar billede smxxx Nybegynder
29. august 2005 - 15:36 #11
Noget á la (i C#):

int thisPos = tekst.IndexOf(tekstenDerSkalFindes,curPos+1);
curPos = thisPos;

Siger mig ikke et bræt.
Som jeg skrev, er jeg ikke meget inde i det.
Manglede bare en form for scipt, jeg kunne lægge ind...
Avatar billede softspot Forsker
29. august 2005 - 15:41 #12
Ja, men du har været lidt utydelig i dine specifikation af hvad det er du søger og det gør det afsindig svært at hjælpe dig med det du vil have :)

Jeg håber du kan se det fra mit/vores synspunkt - vi var ikke inde i dit hoved da du udtænkte din givetvis briliante idé, så derfor er du nød til at være meget specifik i din beskrivelse af hvad det er du vil - for der er mange forskellige løsningsmuligheder alt efter behov.
Avatar billede smxxx Nybegynder
29. august 2005 - 15:45 #13
Hej helt ok.
Øverst på denne side, er der en søgeboks.
Det er en sådan, jeg skal bruge.
Den skal bruges til at søge i en enkelt fil på 10 mb
Avatar billede softspot Forsker
29. august 2005 - 16:00 #14
Så langt var jeg med, men hvad er det brugeren skal have tilbage fra denne søgning?

1a. Er det hele filen (dvs. 10Mb data over en potentiel 56K linie)?

1b. Er det om ordet findes og i givet fald hvor i teksten?

1c. Er det et udsnit af teksten omkring det ord der blev søgt efter (f.eks. 200 tegn før og efter).

2. Skal der kunne søges på enkelte ord, flere ord på een gang eller hele sætninger der skal søges efter?

Der er nogle udfordringer du skal tage hensyn til når du vil lave sådanne funktionaliteter i en browser og de datamængder du snakker om. Hvis det skal være brugbart er du nød til at gøre nogle valg. Derfor vil jeg gerne bede dig tage stilling til ovenstående spørgsmål og skrive dine svar her.
Avatar billede smxxx Nybegynder
29. august 2005 - 16:07 #15
1a. hele filen.
1b. skulle gerne gå til teksten
1c. ??? 200 før og efter kan bruges.
2. gerne sætninger, da der som sagt er mange ens ord
Håber det hjælper lidt.
Avatar billede softspot Forsker
29. august 2005 - 16:20 #16
Det er forhåbentlig noget der kører på et lokalt netværk, for ellers bliver det da træls...

Anyways! Det bekymrer mig en smule at du ikke kunne bruge det C#-kode jeg viste dig tidligere, for så kan du vel heller ikke brugen en kodestump i C# der kan det der...? Nu er det vel ASP.NET du bruger... eller hvad?
Avatar billede smxxx Nybegynder
29. august 2005 - 16:22 #17
Hej ja det er asp,net
Avatar billede softspot Forsker
29. august 2005 - 16:25 #18
...og C#
Avatar billede smxxx Nybegynder
29. august 2005 - 16:27 #19
Ingen C#
Avatar billede softspot Forsker
29. august 2005 - 16:28 #20
OK, så er det altså VB.NET...
Avatar billede smxxx Nybegynder
18. april 2006 - 20:46 #21
Den fik jeg aldrig til at virke,,,men OK
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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