首部 function CharLength(const S: String; Index: Integer): Integer; $[SysUtils.pas 功能 返回字符串中指定位置的字符宽度 说明 CharLength(‘English汉‘, 1) = 1;CharLength(‘English汉‘, 8) = 2 参考 function System.Assert;function SysUtils.StrCharLength 例子 SpinEdit1.Value := CharLength(Edit1.Text, SpinEdit2.Value); ━━━━━━━━━━━━━━━━━━━━━ 首部 function NextCharIndex(const S: String; Index: Integer): Integer; $[SysUtils.pas 功能 返回下一个字符的位置 说明 CharLength(‘你好‘, 1) = 3;CharLength(‘你好‘, 3) = 5 参考 function System.Assert;function SysUtils.StrCharLength 例子 SpinEdit1.Value := NextCharIndex(Edit1.Text, SpinEdit2.Value); ━━━━━━━━━━━━━━━━━━━━━ 首部 function IsPathDelimiter(const S: string; Index: Integer): Boolean; $[SysUtils.pas 功能 返回字符串S中指定位置Index上是否是一个路径分隔符 说明 IsPathDelimiter(‘C:Windows‘, 3) = True 参考 const SysUtils.PathDelim;function SysUtils.ByteType 例子 CheckBox1.Checked := IsPathDelimiter(Edit1.Text, SpinEdit1.Value); ━━━━━━━━━━━━━━━━━━━━━ 首部 function IsDelimiter(const Delimiters, S: string; Index: Integer): Boolean; $[SysUtils.pas 功能 返回字符串S中指定位置Index上是否是一个分隔符Delimiters 说明 IsDelimiter(‘@‘, ‘wjhu111@21cn.com‘, 8) = True 参考 function SysUtils.ByteType 例子 CheckBox1.Checked := IsDelimiter(Edit1.Text, Edit2.Text, SpinEdit1.Value); ━━━━━━━━━━━━━━━━━━━━━ 首部 function IncludeTrailingPathDelimiter(const S: string): string; $[SysUtils.pas 功能 返回包括最后路径分隔符 说明 最后一个字符是路径分隔符则不变;否则加上一个路径分隔符返回 参考 function SysUtils.IsPathDelimiter;function System.Length 例子 Edit1.Text := IncludeTrailingPathDelimiter(Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function IncludeTrailingBackslash(const S: string): string; platform; $[SysUtils.pas 功能 返回包括最后斜线 说明 Result := IncludeTrailingPathDelimiter(S); 参考 function SysUtils.IncludeTrailingPathDelimiter 例子 Edit1.Text := IncludeTrailingBackslash(Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function ExcludeTrailingPathDelimiter(const S: string): string; $[SysUtils.pas 功能 返回排除最后路径分隔符 说明 最后一个字符不是路径分隔符则不变;否则减去最后的路径分隔符返回 参考 function SysUtils.IsPathDelimiter;function System.Length;function System.SetLength 例子 Edit1.Text := ExcludeTrailingPathDelimiter(Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function ExcludeTrailingBackslash(const S: string): string; platform; $[SysUtils.pas 功能 返回排除最后斜线 说明 Result := ExcludeTrailingPathDelimiter(S) 参考 function SysUtils.ExcludeTrailingPathDelimiter 例子 Edit1.Text := ExcludeTrailingBackslash(Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function LastDelimiter(const Delimiters, S: string): Integer; $[SysUtils.pas 功能 返回最后一个分隔符的位置 说明 LastDelimiter(‘.‘, ‘kingron.myetang.com‘) = 16 参考 function SysUtils.StrScan;function SysUtils.ByteType 例子 SpinEdit1.Value := LastDelimiter(Edit1.Text, Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiCompareFileName(const S1, S2: string): Integer; $[SysUtils.pas 功能 返回比较两个文件名 说明 当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;区分大小写 参考 function SysUtils.AnsiCompareStr 例子 SpinEdit1.Value := AnsiCompareFileName(Edit1.Text, Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function SameFileName(const S1, S2: string): Boolean; $[SysUtils.pas 功能 返回两个文件名是否相等 说明 区分大小写 参考 function SysUtils.AnsiCompareFileName 例子 CheckBox1.Checked := SameFileName(Edit1.Text, Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiLowerCaseFileName(const S: string): string; $[SysUtils.pas 功能 返回小写文件名 说明 在非多字节字符系统上相当于AnsiLowerCase 参考 function SysUtils.AnsiLowerCase 例子 Edit2.Text := AnsiLowerCaseFileName(Edit1.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiUpperCaseFileName(const S: string): string; $[SysUtils.pas 功能 返回大写文件名 说明 在非多字节字符系统上相当于AnsiUpperCase 参考 function SysUtils.AnsiUpperCase 例子 Edit2.Text := AnsiUpperCaseFileName(Edit1.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiPos(const Substr, S: string): Integer; $[SysUtils.pas 功能 返回子串Substr在字符中第一次出现的位置 说明 不存在则返回0 参考 SysUtils.AnsiStrPos 例子 SpinEdit1.Value := AnsiPos(Edit1.Text, Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiStrPos(Str, SubStr: PChar): PChar; $[SysUtils.pas 功能 返回指针子串Substr在指针字符中第一次出现的指针位置 说明 不存在则返回nil 参考 function SysUtils.StrByteType 例子 Edit3.Text := AnsiStrPos(PChar(Edit1.Text), PChar(Edit2.Text)); ━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiStrRScan(Str: PChar; Chr: Char): PChar; $[SysUtils.pas 功能 返回在指针字符串Str搜索字符Chr最后一个出现的地址 说明 支持多字节字符系统;AnsiStrRScan(‘kingron.myetang.com‘, ‘.‘) = ‘.com‘ 参考 function SysUtils.AnsiStrScan 例子 Edit2.Text := AnsiStrScan(PChar(Edit1.Text), ‘.‘); ━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiStrScan(Str: PChar; Chr: Char): PChar; $[SysUtils.pas 功能 返回在指针字符串Str搜索字符Chr第一个出现的地址 说明 支持多字节字符系统;AnsiStrRScan(‘kingron.myetang.com‘, ‘.‘) = ‘.myetang.com‘ 参考 function SysUtils.StrScan 例子 Edit2.Text := AnsiStrScan(PChar(Edit1.Text), ‘.‘); ━━━━━━━━━━━━━━━━━━━━━ 首部 function StringReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string; $[SysUtils.pas 功能 返回替换后的字符串 说明 rfReplaceAll为替换全部内容;rfIgnoreCase为忽略大小写 参考 function SysUtils.AnsiUpperCase;function SysUtils.AnsiPos;function System.Copy 例子 ///////Begin StringReplace procedure TForm1.Button1Click(Sender: TObject); begin Memo1.Lines.Values[‘[]‘] := StringReplace(Edit1.Text, Edit2.Text, Edit3.Text, []); Memo1.Lines.Values[‘[rfReplaceAll]‘] := StringReplace(Edit1.Text, Edit2.Text, Edit3.Text, [rfReplaceAll]); Memo1.Lines.Values[‘[rfIgnoreCase]‘] := StringReplace(Edit1.Text, Edit2.Text, Edit3.Text, [rfIgnoreCase]); Memo1.Lines.Values[‘[rfReplaceAll, rfIgnoreCase]‘] := StringReplace(Edit1.Text, Edit2.Text, Edit3.Text, [rfReplaceAll, rfIgnoreCase]); end; ///////End StringReplace ━━━━━━━━━━━━━━━━━━━━━ 首部 function StringToGUID(const S: string): TGUID; $[SysUtils.pas 功能 返回字符串S转换成全局标识 说明 如果字符串非法将触发异常 参考 fuction Windows.Succeeded 例子 Edit2.Text := GUIDToString(StringToGUID(Edit1.Text)); ━━━━━━━━━━━━━━━━━━━━━ 首部 function GUIDToString(const GUID: TGUID): string; $[SysUtils.pas 功能 返回全局标识GUID转换成字符串 说明 <NULL> 参考 fuction Windows.Succeeded 例子 Edit2.Text := GUIDToString(StringToGUID(Edit1.Text)); ━━━━━━━━━━━━━━━━━━━━━

评论