function IsTime(AString: string; ADelimiter: Char): Boolean;
function IsValid(S: string; I: Integer): Boolean;
begin
case I of
1: Result := StrToInt(S) in [0..24];
2, 3: Result := StrToInt(S) in [0..59];
else
Result := False;
end; //end case
end;
var
P, Start: PChar;
Str: string;
Count: Integer;
begin
Result := False;
//嘿嘿,最大长度和最小长度的区别。按照549的题意字符串长度一定在6~9
if (not (Length(AString) in [6..8])) or (AString = '') then Exit;
P := Pointer(AString);
Count := 1;
while (P^ <> #0) do
begin
if (Count > 3) then Exit;
Start := P;
while not (P^ in [#0, ADelimiter]) do Inc(P);
SetString(Str, Start, P - Start);
if (not IsValid(Str, Count)) then Exit;
if (P^ = ADelimiter) then Inc(P);
Inc(Count);
end;
Result := True;
end;
分享到:
相关推荐
自已写的一个数值字符表达式计算函数,只能简单的加减剩除及括号嵌套,可扩充特定字符代替字段等数值,比如可定义 PI等。
delphi 教你如何做表达式解析器 词法分析器 语法分析器
Delphi字 符 串 正 则 表 达 式 的 一 段 示 例 代 码
检查一个字符串是否为有效Email地址 检查字符串是否为有效的IP地址 检查字符串是否为有效的文件名或目录名 检查字符串是否为有效的日期或时间值 检查字符串是否为有效的浮点数 检查字符串是否数字 比较两个字符串的...
delphi 正则表达式和使用例子 ,过虑字符串中的乱码 。
关于Delphi中使用正则表达式获取汉字的问题,需要统计一个字符串中的英文字母,数字,汉字以及其他字符;在网上找了很久关于用Pascal语言提取中文汉字的方法,发现都不能很好的实现,于是经本人亲测有效,发现了使用...
通过输入的正则表达式,来匹配指定的字符串
Lu是一个可对字符串表达式进行动态编译和运行的动态链接库(dll),是一种易于扩展的轻量级嵌入式脚本,提供自动内存管理,也可以手动管理内存。Lu有丰富的运算符和数据类型,大多数运算符可进行重载。Lu的优势在于...
许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。正则表达式通常缩写成"regex",...
Delphi的正则表达式:TPerlRegEx (适用D7,D2006,D2007,D2009)
一个快速字符串处理单元,一些函数用汇编写的,处理速度比DELPHI本身的字符串处理快很多,不过不支持WideString类型。 Idpacker.pas 压缩文件类型检测单元。 ZLibEx.pas 纯Pascal代码的快速压缩解压单元,压缩率...
delphi 正则表达式 源码,带有源码。请大家查找
这是一款正则匹配工具,正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个...
比regexpr好用,支持中文识别,识别中文时转化为UTF8字符串,如下面delphi7示例代码: function CheckResultInfo(const Info, RegxExpr: string; var RetInfo: string): Boolean; var reg: TPerlRegEx; Subject, ...
0192 判断字符串是否为日期或时间 125 0193 获得指定月的最后一天 127 0194 在指定的日期上加上3月 127 0195 实现倒计时功能 128 0196 判断指定年份是否为闰年 129 0197 调用系统设置日期对话框 129 ...
0192 判断字符串是否为日期或时间 125 0193 获得指定月的最后一天 127 0194 在指定的日期上加上3月 127 0195 实现倒计时功能 128 0196 判断指定年份是否为闰年 129 0197 调用系统设置日期对话框 129 ...
4.3.1 一个项目一个目录 82 4.3.2 共享代码的单元 82 4.3.3 多项目管理 84 4.4 Delphi 5项目的框架类 84 4.4.1 TForm类 84 4.4.2 TApplication类 89 4.4.3 TApplication的方法 91 4.4.4 TApplication的事件 92 4.4.5...
//取表达式值 implementation var x:array of double; //实数范围可以更改 y:array of string; max:integer; pai,e:double; function qz(s:string):double; //将没有括号的表达式求值 var t:integer; ...
4.3.1 一个项目一个目录 82 4.3.2 共享代码的单元 82 4.3.3 多项目管理 84 4.4 Delphi 5项目的框架类 84 4.4.1 TForm类 84 4.4.2 TApplication类 89 4.4.3 TApplication的方法 91 4.4.4 TApplication的事件 92 4.4.5...