Ĺadny brzuch
Czesc
Mam w zmiennej wartosc "to jest test". Jak wyciac z niego slowo "to" a jak "test" i "wsadzic" do zmiennej?
Pozdrawiam i prosze o odpowiedz!
nie wiem jak to jest w paszczaku, ale w delphi jest coś takiego jak copy() i pos(). SPrawdź może jest coś takiego w paskalu
//----------------------
www.beldzio.com
Szukam betatesterów chętnych proszę o wpisanie się na www.beldzio.com/beta
pawel09 możesz zrobić to tak:
program test; var txt, sl : string; BEGIN txt := 'To jest test'; txt := Copy(Txt, 4, 9); sl := Copy(Txt, 6, 4); Writeln('wartość zmiennej txt to: ' + txt); Writeln('wartość zmiennej sl to: ' + sl); END.
var s,slowo:string; {s - string, ktory bedziesz przeszukiwal}
var zm:array[1..100] of string;
var i,j:integer;
{...}
slowo:="";
j:=1;
{przeszukuje cały string znak po znaku}
for i:=1 to length(s) do
begin
if s[i]<>" " then {jeżeli znak nie jest spacją}
begin
slowo:=slowo+s[i]; {dodaj znak do słowa}
end else if length(slowo)>0 then {jeżeli spacja i słowo niepuste}
begin
zm[j]:=slowo; {dodaj slowo do tablicy}
slowo:=""; {zeruj slowo}
j:=j+1; {zwieksz licznik}
end;
end;
{sprawdzam, czy zapisalem ostatnie znalezione slowo}
if (s[length(s)]<>" ") and (length(slowo)>0) then
begin
zm[j]:=slowo;
j:=j+1;
end;
Mam nadzieję, że nie ma błędów, bo nie kompilowałem :) Po wykonaniu tego kodu w tablicy zm będziesz miał wszystkie słowa po kolei, ostatnie słowo znajduje się w zm[j]
Pozdrawiam i zapraszam na *** www.windowsik.prv.pl ***
Już to kiedyś było:function DzielWyraz(s:string; c:char; numer:integer):string; var i, n:integer; a:array[0..255]of string; begin i:=1; n:=0; repeat a[n]:=a[n]+s[i]; if s[i+1]=c then begin inc(n); inc(i); end; inc(i); until i-1=length(s); result:=a[numer-1]; end;s - dzielony string
c - znak pomiędzy dzielonymi wyrazami
numer - numer wyrazu, który chcemy wyciągnąć
------------------------
Pzdr, Cyrkiel
Dzięki Wam wielkie, wszystko działa i się przydało! :)
Pozdrawiam!
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Mam w zmiennej wartosc "to jest test". Jak wyciac z niego slowo "to" a jak "test" i "wsadzic" do zmiennej?
Pozdrawiam i prosze o odpowiedz!
nie wiem jak to jest w paszczaku, ale w delphi jest coś takiego jak copy() i pos(). SPrawdź może jest coś takiego w paskalu
//----------------------
www.beldzio.com
Szukam betatesterów chętnych proszę o wpisanie się na www.beldzio.com/beta
pawel09 możesz zrobić to tak:
program test; var txt, sl : string; BEGIN txt := 'To jest test'; txt := Copy(Txt, 4, 9); sl := Copy(Txt, 6, 4); Writeln('wartość zmiennej txt to: ' + txt); Writeln('wartość zmiennej sl to: ' + sl); END.
var s,slowo:string; {s - string, ktory bedziesz przeszukiwal}
var zm:array[1..100] of string;
var i,j:integer;
{...}
slowo:="";
j:=1;
{przeszukuje cały string znak po znaku}
for i:=1 to length(s) do
begin
if s[i]<>" " then {jeżeli znak nie jest spacją}
begin
slowo:=slowo+s[i]; {dodaj znak do słowa}
end else if length(slowo)>0 then {jeżeli spacja i słowo niepuste}
begin
zm[j]:=slowo; {dodaj slowo do tablicy}
slowo:=""; {zeruj slowo}
j:=j+1; {zwieksz licznik}
end;
end;
{sprawdzam, czy zapisalem ostatnie znalezione slowo}
if (s[length(s)]<>" ") and (length(slowo)>0) then
begin
zm[j]:=slowo;
j:=j+1;
end;
Mam nadzieję, że nie ma błędów, bo nie kompilowałem :) Po wykonaniu tego kodu w tablicy zm będziesz miał wszystkie słowa po kolei, ostatnie słowo znajduje się w zm[j]
Pozdrawiam i zapraszam na *** www.windowsik.prv.pl ***
Już to kiedyś było:function DzielWyraz(s:string; c:char; numer:integer):string; var i, n:integer; a:array[0..255]of string; begin i:=1; n:=0; repeat a[n]:=a[n]+s[i]; if s[i+1]=c then begin inc(n); inc(i); end; inc(i); until i-1=length(s); result:=a[numer-1]; end;s - dzielony string
c - znak pomiędzy dzielonymi wyrazami
numer - numer wyrazu, który chcemy wyciągnąć
------------------------
Pzdr, Cyrkiel
Dzięki Wam wielkie, wszystko działa i się przydało! :)
Pozdrawiam!