![]() |
|
|
#1
|
||||
|
||||
|
подскажите пожалуйста как организовать проверку на введенный пароль чтобы он содержал буквы(латиницу), цифры, и символы одновременно также длина пароля должна быть не мение 6 символов. Если хотябы 1но из условий не выполняется то выдать соответственное сообщение
![]() |
|
#2
|
|||
|
|||
|
Вот простейший вариант.
Код:
function _ValidateChars(const Value:String):Boolean;
var
b:byte;
begin
Result:=false;
for b:=1 to Length(Value) do
if Value[b] in [#65..#122] then
begin
Result:=true;
exit;
end;
end;
function _ValidateNums(const Value:String):Boolean;
var
b:byte;
begin
Result:=false;
for b:=1 to Length(Value) do
if Value[b] in [#48..#57] then
begin
Result:=true;
exit;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
with Edit1 do
if Length(Text) > 5 then
begin
if _ValidateChars(Text) then
begin
if _ValidateNums(Text) then
begin
//Код на выполнение
end
else ShowMessage('В тексте отсутствуют цифры');
end
else ShowMessage('В тексте отсутствуют латинские буквы');
end
else ShowMessage('Длина текста менее 6-ти символов');
end; |
|
#3
|
||||
|
||||
|
советую делать через регулярные выражение (поищи в инете RegExp)
|
|
#4
|
||||
|
||||
|
а можно какнибудь попроще?
![]() |
|
#5
|
|||
|
|||
|
Куда уж проще) Можешь почитать про регулярные выражения, по совету Ultras, но не думаю что это будет проще..
|
|
#6
|
||||
|
||||
|
Впринципе все хорошо работает за исключением проверки на использование спец символов (!@#., и т.д)
|
|
#7
|
|||
|
|||
|
Ну так добавь. у тебя же пример теперь есть.
|
|
#8
|
||||
|
||||
|
Цитата:
![]() |
|
#9
|
|||
|
|||
|
можно просто перечисление.
Код:
if s[i] In ['!','@','#'] then ... |