23. juli 2003 - 02:25Der er
4 kommentarer og 1 løsning
Indtastet String indeholdt i en anden String?
Hej jeg er ved at lave et kartotek over mine film. Når jeg søger efter en titel vil jeg gerne returnere alle de elementer der har titlen hvor det indtastede søgeord er indeholdt.
Eksempel: i databasen findes 3 elementer med titlerne Rambo 1, Rambo 2 og Rambo 3
søgeord = Rambo
Ønsket retur = Rambo 1, Rambo 2 og Rambo 3
Jeg er ikke helt sikker på hvordan jeg gør...
Er det måske noget med noget substring ?
Jeg søger naturligvis en optimal løsning / hint :-) Mvh.
Jeg har engang lavet en klasse(Tokenfinder) der kan gøre nogenlunde hvad du søger. Jeg bruger den til at lede efter "tekstbidder" i mine Java-filer. Jeg har lige lavet et lille testprogram til klassen. Alt hvad du skal gøre er at lave en lille tekstfil der indeholder en række linier med tekst (filmtitler), og placere den i samme mappe som denne klasse. Filen skal hedde test.txt, men du kan jo selv se på constructoren hvad klassen skal bruge.
Du kan så selv tilpasse søgealgoritmen så den passer til det du skal bruge den til. Denne her er forresten case-sensitiv.
private void checkFile(File fil) { //check om det er en java-fil if(!getExtension(fil).equals(extension)) return;
resultat.append(fil.getName() + "\n\n");
try { FileReader fileReader = new FileReader(fil);//indlæser filen BufferedReader bufferReader = new BufferedReader(fileReader);//laver en bufferedReader
while(bufferReader.ready())// så længe der er linier { String linie = bufferReader.readLine();
StringBuffer sb = new StringBuffer(linie);
if(linie.length() > 0)//hvis linien er større end 0 { int wordLaengde = soegeToken.length(); int linieLaengde = linie.length();
okay Mikkelbm, jeg siger tak for dine inflæg. Jeg ved ikke horfor jeg ikke har tænkt over at jeg kan gøre det i databasen. Her er pointene.
Synes godt om
Ny brugerNybegynder
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.