如何判断变量为数字还是英文字母

yesfox 2011-08-09 01:27:05
假设
var
s:string;
如果判断当S为英文字母时执行....
当S为数字字母时执行......
{'.....'为代码,不用理会}
...全文
222 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
yesfox 2011-08-09
  • 打赏
  • 举报
回复
多谢各位,暂时无问题了!!!
jyb_9 2011-08-09
  • 打赏
  • 举报
回复
if strtointdef(copy(s,1,1),99)=99 then
showmessage('第一个为字母')
else
showmessage('第一个为数字');
yesfox 2011-08-09
  • 打赏
  • 举报
回复
语句是怎样呢??并且delphi出错的内容是:Type of expression must be BOOLEAN
shijies 2011-08-09
  • 打赏
  • 举报
回复
用leftstr取第一个字符进行判断。
hongss 2011-08-09
  • 打赏
  • 举报
回复
你把楼上老大的代码稍作修改就可以了

if s[1] in ['0'..'9'] then
//数字
if s[1] in ['A'..'Z','a'..'z'] then
//字母
yesfox 2011-08-09
  • 打赏
  • 举报
回复
楼上的能写个较为完整的代码吗?
浩南_哥 2011-08-09
  • 打赏
  • 举报
回复
s[1] in ['0'..'9'];//数字
s[1] in ['A'..'Z'];//字母
yesfox 2011-08-09
  • 打赏
  • 举报
回复
补充:只判断所输入的第一位是字母还是数字。
麻烦各位赐教!!
ADSLAN 2011-08-09
  • 打赏
  • 举报
回复
Delphi 2009 新增单元 Character[2]: IsLetter、IsUpper、IsLower、IsDigit、IsNumber

uses
Character;

IsLetter: {是否是个字母; 范围 A..Z 与 a..z}
IsUpper: {是否是个大写字母; 范围 A..Z}
IsLower: {是否是个小写字母; 范围 a..z}
IsDigit: {是否是个十进制数字; 范围 0..9}
IsNumber: {是否是个数字符号; 范围包括 0..9, 还有 ASCII 码中的 178、179、185、188、189、190 等}

不过是判断1个字符
纯冰糖 2011-08-09
  • 打赏
  • 举报
回复
s in [0..9] ...
s in['A'..'Z']...
浩南_哥 2011-08-09
  • 打赏
  • 举报
回复

function IsNum(str: string): Boolean;
var
i: integer;
begin
result := False;
for i := 1 to length(str) do
if not (str[i] in ['0'..'9']) then
begin
result := false;
exit;
end;
result := True;
end;
bdmh 2011-08-09
  • 打赏
  • 举报
回复
去看asic码表,对照着取范围即可

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧