我想写一个代码块,这将允许我验证包含大小写字母以及数字的字母数字身份证号码。检查输入字符 - 帕斯卡尔
由于它的固定大小,我没有问题隔离每个部分(即大写字母部分,小写字母部分和数字部分分开检查),但我在检查大写和小写字母时遇到问题。
我已经阅读了IsUpper
和IsLower
的功能,但我很难在我的程序中实现它。这是最有效的方式吗?还是有更简单的路线?
我正在使用Pascal(Free Pascal IDE),并且要验证的示例输入为Abc123
。
谢谢!
编辑:
Program CheckChar;
VAR
UserID, LCase, UCase, Num : String;
readkey : char;
L : Integer;
CONST
Upper = ['A'..'Z'];
Lower = ['a'..'z'];
Int = ['0'..'9'];
Begin
Write('Enter UserID ');Readln(UserID);
Ucase := Copy(UserID,1,1);
LCase := Copy(UserID,2,1);
Num := Copy(UserID,3,2);
L := Length(UserID);
While L = 6 Do
Begin
IF not (Ucase in Upper) or (Lcase in Lower) or (Num in Int) then
Begin
Writeln('Invalid Input');
End;
Else
Writeln('Valid Input');
Else
Writeln('Invalid Length);
End;
readln(readkey);
End.
你能证明你试过了吗? – lurker