Odnajdowanie w memo danej frazy....

0

Witam Was.

Wiele mi pomogliście i powiem Wam, że jeszcze troszkę i dam Wam spokój ;)

Mianowicie mam w memo dany "strumień" wierszy (ew. mogą to być dane z pliku )
np.
www.alfabeta.pl
www.alfabetagamma.pl
www.alfabeta.net
www.4programmers.net

i teraz haczyk polega na tym, że chciałbym aby program automatycznie
skopiował zawartość między 'www.' a '.net'
Gdy odnajdzie aby ją skopiował do następnego memo np. memo2 bądź zapisał do pliku.

To już moja ostatnia prośba do Was ;)

0
djaffect napisał(a)

Witam Was.

Wiele mi pomogliście i powiem Wam, że jeszcze troszkę i dam Wam spokój ;)

Mianowicie mam w memo dany "strumień" wierszy (ew. mogą to być dane z pliku )
np.
www.alfabeta.pl
www.alfabetagamma.pl
www.alfabeta.net
www.4programmers.net

i teraz haczyk polega na tym, że chciałbym aby program automatycznie
skopiował zawartość między 'www.' a '.net'
Gdy odnajdzie aby ją skopiował do następnego memo np. memo2 bądź zapisał do pliku.

To już moja ostatnia prośba do Was ;)

działa z www.xxx.333

var
ss: string;
i :Integer;

begin
for i = 0 to Memo1.Lines.Count - 1 do
begin
  ss := Memo1.Lines[x] // pobiera jedną linie tekstu
  ss := Copy(ss,5,length(ss)-8); // (8=5+3)
  Memo2.lines.add(ss);
  end;
end

działa z różną liczbą znakow przed i po kropce(muszą by conajmniej 2 kropki!):

var
ss: string;
i,xL,xR: integer;

begin
for i = 0 to Memo1.Lines.Count - 1 do
begin
  ss := Memo1.Lines[x]; // pobiera jedną linie tekstu
  xR := length(ss); 
  xl:=0;  // dla pewności
  if Pos('.',ss) >= 2 then// jeżeli są conajmniej 2 kropki
  begin
    while ss[xR] <> '.' do xR:= xR-1; // szukaj ostatniej kropki
    while ss[xL] <> '.' do xL:= xL+1; // szukaj pierwszej kropki
    ss := Copy(ss,xL+1,xR-xL-1); // kopiuje między kropkami
    Memo2.lines.add(ss);
  end;
end;
end;
0

dziekuje Ci zibi bardzo ;)

ale mam do Ciebie jeszcze mała proźbę pomógłbyś mi przerobić ten kod?

Przyjmijmy że zamiast "." będzie to znak "/"
I co gdy w adresie do linku jest np. 5 tych znaków a mnie interesuje zawartość między ostatnim a przed ostatnim

1 użytkowników online, w tym zalogowanych: 0, gości: 1