如何较验集合类型字符!由于某种特殊需求,我在SQL Server数据库中将日期用字符串来存储。
现在我想写一函数来验证某一记录的日期型字段是否符合日期字符串格式,如'2005-11-10'。
如果不是则返回False,否则返回True。
我的程序片段如下
function ValidDateStr(varDate :string) :boolean ;
type
NumSets = set of Char ;
var
NumSet :NumSets ;
aaa :string;
begin
NumSet :=['0','1','2','3','4','5','6','7','8','9',' '] ; if Copy(varDate,1,1) in NumSet then
Result :=True
else
Result :=False ;
end ; 可是上面的语句if Copy(varDate,1,1) in NumSet then 是类型不兼容,
因为前面是String ;后面是Char;
我想问问各位大侠,采用什么方法或函数可以解决此问题?谢谢!
我不想采用类似如下这样的语句: if (Copy(varDate,1,1) = '0') or (Copy(varDate,1,1) = '1') or (Copy(varDate,1,1) = '2') or
(Copy(varDate,1,1) = '3') or (Copy(varDate,1,1) = '4') or (Copy(varDate,1,1) = '5') or
(Copy(varDate,1,1) = '6') or (Copy(varDate,1,1) = '7') or (Copy(varDate,1,1) = '8') or
(Copy(varDate,1,1) = '9') or (Copy(varDate,1,1) = ' ') then
现在我想写一函数来验证某一记录的日期型字段是否符合日期字符串格式,如'2005-11-10'。
如果不是则返回False,否则返回True。
我的程序片段如下
function ValidDateStr(varDate :string) :boolean ;
type
NumSets = set of Char ;
var
NumSet :NumSets ;
aaa :string;
begin
NumSet :=['0','1','2','3','4','5','6','7','8','9',' '] ; if Copy(varDate,1,1) in NumSet then
Result :=True
else
Result :=False ;
end ; 可是上面的语句if Copy(varDate,1,1) in NumSet then 是类型不兼容,
因为前面是String ;后面是Char;
我想问问各位大侠,采用什么方法或函数可以解决此问题?谢谢!
我不想采用类似如下这样的语句: if (Copy(varDate,1,1) = '0') or (Copy(varDate,1,1) = '1') or (Copy(varDate,1,1) = '2') or
(Copy(varDate,1,1) = '3') or (Copy(varDate,1,1) = '4') or (Copy(varDate,1,1) = '5') or
(Copy(varDate,1,1) = '6') or (Copy(varDate,1,1) = '7') or (Copy(varDate,1,1) = '8') or
(Copy(varDate,1,1) = '9') or (Copy(varDate,1,1) = ' ') then
解决方案 »
- Application.ProcessMessages 放在sleep 前还是后?
- delphi3 perfect gird是什么控件?
- 每个pdf文件右键属性里有个pdf页有文章的title author 等信息,能否将其取出呢?
- 请问这几句Excel宏代码怎么改成delphi的格式?在线等。
- 如何在程序中模拟 alt+tab 按键
- 新手提问:遍历比较文件名。。。???
- 怎么才能在文本框里输入的数字不进行四舍五入?在线!
- 郁闷! 散分!
- 用TFileStream写文件的过程中,异常中断(如断电),会否破坏文件内容?
- <marquee><font color="red"><strong>怎样将用数据库用户名和密码写进程序</strong></font></marquee>
- 请问如何判断edit里输入的东西包含了某个字符?谢谢!
- 在多线程中用TClientDataSet打开数据表,总是报错:invalid argument
改为:
if Copy(varDate,1,1)[1] in NumSet then
function ValidDate(Const strDateTime: String): Boolean;
begin
try
StrToDate(strDateTime);
Result:=True;
except
Result:=False;
end;
end;
if Copy(varDate,1,1) in NumSet then
改为:
if Copy(varDate,1,1)[1] in NumSet then
再改为
Result := varDate[1] in NumSet;
行舟
欢迎使用CSDN论坛浏览器
http://blog.csdn.net/xingzhou/
行舟
欢迎使用CSDN论坛浏览器
http://blog.csdn.net/xingzhou/