Jest w Delphi taka funkacja dzięki której na przykad można sprawdzić poprawność wpisywanego maila lub innych danych??
Chodzi mi o coś podobnego do preg_match() w PHP
Dzieki i POYDRAWIAM.
Jest w Delphi taka funkacja dzięki której na przykad można sprawdzić poprawność wpisywanego maila lub innych danych??
Chodzi mi o coś podobnego do preg_match() w PHP
Dzieki i POYDRAWIAM.
z tego co wiem to nie ma.
Trzeba samemu sobie to napisać. Nie jest to trudne. Wystarczy napisanie pętli która poprzeskakuje sobie literka po literce i jeśli nie znajdzie znaku @ to błąd, jeśli nie bedzie textu przed @ to błąd , kropki , itd .....
Hmmm możesz sprawdzić czy w stringu jest '@' i czy nie jest coś (jakiś tekst) przed i po tym znaku
if (Pos('@',strmail)<>0) and (Pos('@',strmail)<>1) and Pos('@',strmail)<>length(strmail)) then
dobrze;
else
zle;
gdzie strmail to zmienan string
funcja Pos(substr,str) zwraca pozycje stringu substr w stringu str,
jeżeli takiego nie ma w str to zwraca zero
dodatkowo możesz sprawdzać czy jest kropka gdzieś po @ :)
Pozdrawiam
tiger
tak z nudów napisze sobie taki kodzik :d :
var
i:integer;
s:string;
begin
Edit1.text:='mó[email protected]';
s:=Edit1.text;
for i:=0 to Length(s) do
begin
if s[i]='@' then
begin
if i>0 then
Memo1.lines.add('Znak małpy jest w adresie.')
else if i=0 then
Memo1.lines.add('Adres niepoprawny. Brak znaków przed znakiem @');
end;
if s[i]='.' then Memo1.lines.add('Kropka jest w adresie');
...
itp, itd...
Jak bedzie jakiś błąd to nie bijcie bo to tak na szybko ;P
Są inne funkcje z których można skoryzstac opróczPOS()??
Yar napisał(a)
Są inne funkcje z których można skoryzstac opróczPOS()??
Tak jak tu koledzy wspomnieli możesz po kolei lecieć znaki i sprawdzać:)
tylko po co :P
hmmm innych funkcji takiego typu raczej nie ma,
wszystkie które mogą Ci się przydać to Pos() i Length() zwracająca długość
Jeżeli interesuje mnie aby w stringu były zawarte same cyfry to też muszę znak po znaku sprawdzać - nie ma łatwiejszych metod ??
Jeszcze raz Dzięki za pomoc i Pozdrawiam.
możesz spróbować zmienć na liczbę StrToInt i jak będzie błąd to błąd (wykorzystaj Try albo TryStrToInt)