Avatar billede coladrenge Nybegynder
24. april 2006 - 21:12 Der er 6 kommentarer og
1 løsning

Finde ord det står med store bogstaver i memofelt

Hej

Jeg skal trække data ud fra et memo felt som er fyldt med tekst. Det der er det specielle er at det kun er linie hvor det første ord står med store bogstaver der skal ud

eksempel

13-01-2003
KNGE45D Op. plast/reconstr. u. fremmedleg. lig. cruc. ant.
I universel anæstesi og blodtomhed

Problemet er at ordet kan står på hvilken som helst linie i memofeltet - men det vil altid stå som det første. Der er ingen begrænsing på hvordan ordet kan se ud. Et andet eksempel er KABC56 eller DM480
Avatar billede stoney Nybegynder
24. april 2006 - 21:22 #1
Det vil sige linien "I universel anæstesi og blodtomhed" også opfylder
kriteriet med store bogstaver ????
Det er ikke bare ordet efter dato du kan bruge ?

Stoney
Avatar billede coladrenge Nybegynder
24. april 2006 - 22:48 #2
hej

desvære kan man ikke være sikker på at der står en dato for and det som skal hentes ud. Linien I universel anæstesi og blodtomhed opfylder ikke det krav og skal ikke med det eneste som skal med er KNGE45D Op. plast/reconstr. u. fremmedleg. lig. cruc. ant. som skal deles op i 2 felter felt 1 : KNGE45D og felt 2 : Op. plast/reconstr. u. fremmedleg. lig. cruc. ant. Det eneste som man kan være helt sikker på er at det som skal hentes ud starter med et ord hvor alle bogstaver er med stor og at linien som skal hentes ud slutter med #10#13

En løsning vil være at man laver en function som undersøger om alle bogstaver i ordet er med stort - men hvordan man lige gør det er jeg vist lidt for tungøjet til at kunne se nu. Man ved desuden også at det ordet med stort altid vil være det første ord på linien.
Avatar billede dkn Nybegynder
24. april 2006 - 23:28 #3
dvs. "KNGE45D" kan godt stå på sin egen linie i nogle tilfælde ?
Avatar billede coladrenge Nybegynder
24. april 2006 - 23:34 #4
Hej

det kan det godt - men i det tilfælde vil der kun være tale om at hente denne værdi ud til felt1 og felt2 vil så være tom
Avatar billede dkn Nybegynder
24. april 2006 - 23:39 #5
Tja ved sku ikke om det er godtnok, bare lige et hurtig udkast til de ting du har oplyst

procedure TForm1.Button1Click(Sender: TObject);
var
  I: integer;
  buf: string;
begin
  for I := 0 to memo1.Lines.Count - 1 do
  begin
    buf := memo1.Lines.Strings[I];
    //- any space
    if pos(' ', buf) <> 0 then
      buf := copy(buf, 0, pos(' ', buf)-1);

    //- ignore date
    if pos('-', buf) <> 0 then
    continue;

    if (buf <> '') and (ansiuppercase(buf) = buf) then
    begin
      showmessage(buf);
      break;
    end;
  end;
end;
Avatar billede coladrenge Nybegynder
30. april 2006 - 13:20 #6
hej DKN

smid lige et svar - det fungere det som du har lavet.
Avatar billede dkn Nybegynder
30. april 2006 - 18:22 #7
svar
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