Avatar billede jaweni Nybegynder
30. november 2005 - 16:24 Der er 10 kommentarer og
1 løsning

Tekstsøgning

Hej,
jeg er gået kludder i noget kode, der
skal udskrive en overskrift og fundne
linier i en tekstfil.

Eksempel:

1750
fol 142a
hr major Henrich Hoff fra Hessel (begravet)
Rasmus Nielsen af Homå og Maren Sørensdatter af Ålsø (copuleret)
Peder Andersens mindste barn af Høbjerg (begravet)

fol 142b
Rasmus Andersens barn af Ålsø - Anders
Rasmus Nielsen og Anne Christensdatter af Ålsø (copuleret)
Christen Daniels barn af Ålsø - Friderich
Rasmus Andersens barn Anders af Ålsø (begravet)

KUN hvis, der er noget der matcher det søgte,
fx. Rasmus, skal overskriften:
(fx. fol 142b) stå i en linie for sig selv.
og derefter alle linier, der er hits.

Hvis I ikke kan tyde meningen, så skriv
Avatar billede nca Juniormester
30. november 2005 - 17:09 #1
Begynder alle nye afsnit med "fol" ?
Avatar billede jaweni Nybegynder
30. november 2005 - 18:19 #2
Nej, ikke nødvendigvis;
men en linie er en linie.

Linier, der starter med: fol,
skal være overskrift til de eftefølgende
linier, hvis der er match (hits);

Det skal bare være "overskriften",
hvis der findes noget i de efter-
følgende linier. Så tror jeg ikke,
at jeg kan forklare mig ret bedre.
Sorry!

Søgning på: Rasmus skal i ovenstående eksempel vise flg.:

fol 142a
Rasmus Nielsen af Homå og Maren Sørensdatter af Ålsø (copuleret)

fol 142b
Rasmus Andersens barn af Ålsø - Anders
Rasmus Nielsen og Anne Christensdatter af Ålsø (copuleret)
Rasmus Andersens barn Anders af Ålsø (begravet)

Der skal lige tages højde for bredden af
denne tekstbox.
Avatar billede jaweni Nybegynder
30. november 2005 - 21:29 #3
Har fået nogenlunde styr på det;
men tag lige et kig på koden.
www.afmsoftware/software/indexet.php
(8 KB)

Når der ikke et match, så skrives
fol ... alligevel.
Det er til at leve med; men jeg vil helst
undgå at se den linie.
Avatar billede nca Juniormester
01. december 2005 - 08:11 #4
Jeg kan ikke se din kode via det medøflgende link.
Jeg gætter på, at du skal ha' 2 strenge. En til overskriften og en til hver af de linier, du undersøger.
Kun hvis der er et hit, skal du udskrive overskriften og linien med hittet i.
Avatar billede vallemanden Nybegynder
02. december 2005 - 07:31 #5
Avatar billede nca Juniormester
02. december 2005 - 08:22 #6
Så mangler jeg lige navnet på kodefilen ;-)
Avatar billede kammeyer Nybegynder
03. december 2005 - 12:15 #7
det må være ft.zip - den fylder de nævnte 8 kb
Avatar billede nca Juniormester
04. december 2005 - 11:34 #8
Jeg har rettet lidt i din keypress procedure, bl.a. sat Key=#0, så du undgår en lyd hver gang du trykker på Return.
Proceduren ser nu således ud:

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
Var
  Fundet: Boolean;
  Overskrift: String;
begin
  IF Key = #13 THEN BEGIN
    Key:=#0;
    AssignFile(F,OD1.FileName);
    Reset(F);
    Memo1.Clear;
    Fundet := False;
    WHILE NOT EOF(F) DO BEGIN
      Lin := '';
      Readln(F,Lin);

      if pos('fol ',Lin) > 0 then begin
        //memo1.lines.add('');
        //memo1.lines.add(Lin);
        Overskrift:=Lin;
      end;

      if POS(Edit1.Text,Lin) > 0 then begin
        If overskrift<>'' then begin
          memo1.lines.add('');
          Memo1.Lines.Add(Overskrift);
          Overskrift:='';
        end;
        memo1.lines.add(Lin);
        Fundet := True;
      end;
    END; { WHILE NOT... }
    CloseFile(F);
    IF NOT Fundet THEN
      ShowMessage('Fandt ikke det søgte.');
  END; { IF Key... }
end;
Avatar billede jaweni Nybegynder
08. december 2005 - 03:15 #9
Hej alle,
hvis jeg har været lidt for studshovedet,
så undskylder jeg meget.

nca: tester lige dit forslag og vender
tilbage, hvis det ikk' virker; men mon
ikke det gør. Årstallet skal selvfølgelig
også med. Det finder jeg ud af.

Hvis intet svar inden Jul, så GOD JUL!!!
jaweni
Avatar billede nca Juniormester
01. januar 2006 - 17:05 #10
Hej
Har du fundet ud af det med årstallet?
Avatar billede jaweni Nybegynder
02. januar 2006 - 14:26 #11
Hej nca ( godt Nytår)
nej desværre!
For jeg har haft gæster næsten hele december,
så de skulle jo underholdes.
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