来源:www.cncfan.com | 2006-1-9 | (有1894人读过)
首部 function QuotedStr(const S: string): string; $[SysUtils.pas 功能 返回字符串S在pascal中的表现形式 说明 单引号中的一个单引号将转成两个 参考 procedure System.Insert 例子 Edit2.Text := QuotedStr(Edit1.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiQuotedStr(const S: string; Quote: Char): string; $[SysUtils.pas 功能 返回字符串S以字符Quote为引号的表现形式 说明 AnsiQuotedStr('hello"world', '@')='@hello"world@';AnsiQuotedStr('hello"world', '"')='"hello""world"' 参考 function SysUtils.AnsiStrScan 例子 Edit2.Text := AnsiQuotedStr(Edit1.Text, '"'); ━━━━━━━━━━━━━━━━━━━━━ 首部 function IfThen(AValue: Boolean; const ATrue: string; AFalse: string = ''): string; overload; $[StrUtils.pas 功能 返回指定的逻辑字符串 说明 IfThen(True, '是', '否') = '是';IfThen(False, '是', '否') = '否' 参考 <NULL> 例子 Edit3.Text := IfThen(CheckBox1.Checked, Edit1.Text, Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function LeftStr(const AText: string; const ACount: Integer): string; $[StrUtils.pas 功能 返回字符串AText左边的ACount个字符 说明 LeftStr('123456', 3) = '123' 参考 function System.Copy 例子 Edit3.Text := LeftStr(Edit1.Text, SpinEdit1.Value); ━━━━━━━━━━━━━━━━━━━━━ 首部 function RightStr(const AText: string; const ACount: Integer): string; $[StrUtils.pas 功能 返回字符串AText右边的ACount个字符 说明 RightStr('123456', 3) = '456' 参考 function System.Copy 例子 Edit3.Text := RightStr(Edit1.Text, SpinEdit1.Value); ━━━━━━━━━━━━━━━━━━━━━ 首部 function MidStr(const AText: string; const AStart, ACount: Integer): string; $[StrUtils.pas 功能 返回字符串AText从AStart开始的ACount个字符 说明 其实就是Copy 参考 function System.Copy 例子 Edit3.Text := MidStr(Edit1.Text, SpinEdit1.Value, SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiMatchStr(const AText: string; const AValues: array of string): Boolean; $[StrUtils.pas 功能 返回字符串数组AValues中是否包含字符串AText 说明 区分大小写 参考 function StrUtils.AnsiIndexStr 例子 CheckBox1.Checked := AnsiMatchStr(Edit1.Text, ['a1', 'a2', 'a3', 'a4']); ━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiIndexStr(const AText: string; const AValues: array of string): Integer; $[StrUtils.pas 功能 返回字符串AText在字符串数组AValues中的位置 说明 区分大小写 参考 function SysUtils.AnsiSameStr 例子 SpinEdit1.Value := AnsiIndexStr(Edit1.Text, ['a1', 'a2', 'a3', 'a4']); ━━━━━━━━━━━━━━━━━━━━━ 首部 function DupeString(const AText: string; ACount: Integer): string; $[StrUtils.pas 功能 返回字符串AText的ACount个复本 说明 当ACount为0时返回'' 参考 function System.SetLength 例子 Edit3.Text := DupeString(Edit1.Text, SpinEdit1.Value); ━━━━━━━━━━━━━━━━━━━━━ 首部 function ReverseString(const AText: string): string; $[StrUtils.pas 功能 返回字符串AText的反序 说明 ReverseString('1234') = '4321' 参考 function System.SetLength 例子 Edit3.Text := ReverseString(Edit1.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function StuffString(const AText: string; AStart, ALength: Cardinal; const ASubText: string): string; $[StrUtils.pas 功能 返回嵌套字符串 说明 AStart:嵌套开始位置;ALength:嵌套长度;StuffString('abcd', 2, 0, '12') = 'a12bcd' 参考 function System.Copy 例子 Edit3.Text := StuffString(Edit1.Text, SpinEdit1.Value, SpinEdit2.Value, Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function RandomFrom(const AValues: array of string): string; overload; $[StrUtils.pas 功能 随机返回字符串数组AValues中的一个元素 说明 之前建议执行Randomize 参考 function System.Random 例子 Randomize; Edit3.Text := RandomFrom(['a1', 'a2', 'a3', 'a4']); ━━━━━━━━━━━━━━━━━━━━━ 首部 function AdjustLineBreaks(const S: string; Style: TTextLineBreakStyle = {$IFDEF LINUX} tlbsLF {$ENDIF} {$IFDEF MSWINDOWS} tlbsCRLF {$ENDIF}): string; $[SysUtils.pas 功能 返回将给定字符串的行分隔符调整为CR/LF序列 说明 AdjustLineBreaks('1'#13'2'#13)='1'#13#10'2'#13#10;AdjustLineBreaks('1'#10'2'#10)='1'#13#10'2'#13#10 参考 function SysUtils.StrNextChar
━━━━━━━━━━━━━━━━━━━━━ 首部 function Format(const Format: string; const Args: array of const): string; $[SysUtils.pas 功能 返回按指定方式格式化一个数组常量的字符形式 说明 这个函数是我在Delphi中用得最多的函数,现在就列举几个例子给你个直观的理解 "%" [索引 ":"] ["-"] [宽度] ["." 摘要] 类型 Format('x=%d', [12]); //'x=12' //最普通 Format('x=%3d', [12]); //'x= 12' //指定宽度 Format('x=%f', [12.0]); //'x=12.00' //浮点数 Format('x=%.3f', [12.0]); //'x=12.000' //指定小数 Format('x=%.*f', [5, 12.0]); //'x=12.00000' //动态配置 Format('x=%.5d', [12]); //'x=00012' //前面补充0 Format('x=%.5x', [12]); //'x=0000C' //十六进制 Format('x=%1:d%0:d', [12, 13]); //'x=1312' //使用索引 Format('x=%p', [nil]); //'x=00000000' //指针 Format('x=%1.1e', [12.0]); //'x=1.2E+001' //科学记数法 Format('x=%%', []); //'x=%' //得到"%" S := Format('%s%d', [S, I]); //S := S + StrToInt(I); //连接字符串 参考 proceduer SysUtils.FmtStr 例子 Edit1.Text := Format(Edit2.Text, [StrToFloatDef(Edit.3.Text, 0)]);
|