Delphi字符串函数大全

uses StrUtils;

【字符串函数大全】
      首部 function AnsiResemblesText(const AText, AOther: string): Boolean;
      $[StrUtils.pas
      功能 返回两个字符串是否相似
      说明 ANSI(American National Standards Institute)美国国家标准协会;不区分大小写
      参考 function StrUtils.SoundexProc; var StrUtils.AnsiResemblesProc
      例子 CheckBox1.Checked := AnsiResemblesText(Edit1.Text, Edit2.Text);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function AnsiContainsText(const AText, ASubText: string): Boolean;
      $[StrUtils.pas
      功能 返回字符串AText是否包含子串ASubText
      说明 不区分大小写
      参考 function StrUtils.AnsiUppercase; function StrUtils.AnsiPos
      例子 CheckBox1.Checked := AnsiContainsText(Edit1.Text, Edit2.Text);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function AnsiStartsText(const ASubText, AText: string): Boolean;
      $[StrUtils.pas
      功能 返回字符串AText是否以子串ASubText开头
      说明 不区分大小写
      参考 function Windows.CompareString
      例子 CheckBox1.Checked := AnsiStartsText(Edit1.Text, Edit2.Text);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function AnsiEndsText(const ASubText, AText: string): Boolean;
      $[StrUtils.pas
      功能 返回字符串AText是否以子串ASubText结尾
      说明 不区分大小写
      参考 function Windows.CompareString
      例子 CheckBox1.Checked := AnsiEndsText(Edit1.Text, Edit2.Text);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function AnsiReplaceText(const AText, AFromText, AToText: string):
      string; $[StrUtils.pas
      功能 返回字符串AText中用子串AFromText替换成子串AToText的结果
      说明 不区分大小写
      参考 function SysUtils.StringReplace; type SysUtils.TReplaceFlags
      例子 Edit4.Text := AnsiReplaceText(Edit1.Text, Edit2.Text, Edit3.Text);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function AnsiMatchText(const AText: string; const AValues: array of
      string): Boolean; $[StrUtils.pas
      功能 返回字符串数组AValues中是否包含字符串AText
      说明 不区分大小写
      参考 function StrUtils.AnsiIndexText
      例子 CheckBox1.Checked := AnsiMatchText(Edit1.Text, ['a1', 'a2', 'a3',
      'a4']);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function AnsiIndexText(const AText: string; const AValues: array of
      string): Integer; $[StrUtils.pas
      功能 返回字符串AText在字符串数组AValues中的位置
      说明 不区分大小写;如果不包含则返回-1
      参考 function SysUtils.AnsiSameText
      例子 SpinEdit1.Value := AnsiIndexText(Edit1.Text, ['a1', 'a2', 'a3', 'a4']);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function AnsiContainsStr(const AText, ASubText: string): Boolean;
      $[StrUtils.pas
      功能 返回字符串AText是否包含子串ASubText
      说明 区分大小写
      参考 function StrUtils.AnsiPos
      例子 CheckBox1.Checked := AnsiContainsStr(Edit1.Text, Edit2.Text);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function AnsiStartsStr(const ASubText, AText: string): Boolean;
      $[StrUtils.pas
      功能 返回字符串AText是否以子串ASubText开头
      说明 区分大小写
      参考 function SysUtils.AnsiSameStr
      例子 CheckBox1.Checked := AnsiStartsStr(Edit1.Text, Edit2.Text);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function AnsiEndsStr(const ASubText, AText: string): Boolean;
      $[StrUtils.pas
      功能 返回字符串AText是否以子串ASubText结尾
      说明 区分大小写
      参考 function SysUtils.AnsiSameStr
      例子 CheckBox1.Checked := AnsiEndsStr(Edit1.Text, Edit2.Text);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function AnsiReplaceStr(const AText, AFromText, AToText: string):
      string; $[StrUtils.pas
      功能 返回字符串AText中用子串AFromText替换成子串AToText的结果
      说明 区分大小写
      参考 function SysUtils.StringReplace; type SysUtils.TReplaceFlags
      例子 Edit4.Text := AnsiReplaceStr(Edit1.Text, Edit2.Text, Edit3.Text);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 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 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 SearchBuf(Buf: PChar; BufLen: Integer; SelStart, SelLength:
      Integer; SearchString: String; Options: TStringSearchOptions = [soDown]):
      PChar; $[StrUtils.pas
      功能 返回第一个搜索到的指针位置
      说明 这函数常用于文本中搜索字符串
      参考 <NULL>
      例子
      ///Begin SearchBuf
      function SearchEdit(EditControl: TCustomEdit; const SearchString: String;
      SearchOptions: TStringSearchOptions; FindFirst: Boolean = False): Boolean;
      var
      Buffer, P: PChar;
      Size: Word;
      begin
      Result := False;
      if (Length(SearchString) = 0) then Exit;
      Size := EditControl.GetTextLen;
      if (Size = 0) then Exit;
      Buffer := StrAlloc(Size + 1);
      try
      EditControl.GetTextBuf(Buffer, Size + 1);
      P := SearchBuf(Buffer, Size, EditControl.SelStart, EditControl.SelLength,
      SearchString, SearchOptions);
      if P <> nil then begin
      EditControl.SelStart := P - Buffer;
      EditControl.SelLength := Length(SearchString);
      Result := True;
      end;
      finally
      StrDispose(Buffer);
      end;
      end;

      procedure TForm1.Button1Click(Sender: TObject);
      var
      SearchOptions: TStringSearchOptions;
      begin
      SearchOptions := [];
      if CheckBox1.Checked then
      Include(SearchOptions, soDown);
      if CheckBox2.Checked then
      Include(SearchOptions, soMatchCase);
      if CheckBox3.Checked then
      Include(SearchOptions, soWholeWord);
      SearchEdit(Memo1, Edit1.Text, SearchOptions);
      Memo1.SetFocus;
      end;
      ///End SearchBuf
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function Soundex(const AText: string; ALength: TSoundexLength = 4):
      string; $[StrUtils.pas
      功能 返回探测字符串
      说明 根据探测法(Soundex)可以找到相进的字符串;http://www.nara.gov/genealogy/coding.html
      参考 <NULL>
      例子 Edit2.Text := Soundex(Edit1.Text, SpinEdit1.Value);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function SoundexInt(const AText: string; ALength: TSoundexIntLength =
      4): Integer; $[StrUtils.pas
      功能 返回探测整数
      说明 ALength的值越大解码准确率越高
      参考 <NULL>
      例子 SpinEdit2.Value := SoundexInt(Edit1.Text, SpinEdit1.Value);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function DecodeSoundexInt(AValue: Integer): string; $[StrUtils.pas
      功能 返回探测整数的解码
      说明 DecodeSoundexInt(SoundexInt('hello')) 相当于 Soundex('hello')
      参考 <NULL>
      例子 Edit2.Text := DecodeSoundexInt(SpinEdit2.Value);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function SoundexWord(const AText: string): Word; $[StrUtils.pas
      功能 返回探测文字数值
      说明 没有参数ALength已经固定为4
      参考 <NULL>
      例子 SpinEdit2.Value := SoundexWord(Edit1.Text);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function DecodeSoundexWord(AValue: Word): string; $[StrUtils.pas
      功能 返回探测文字数值的解码
      说明 DecodeSoundexWord(SoundexWord('hello')) 相当于 Soundex('hello')
      参考 <NULL>
      例子 Edit2.Text := DecodeSoundexWord(SpinEdit2.Value);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function SoundexSimilar(const AText, AOther: string; ALength:
      TSoundexLength = 4): Boolean; $[StrUtils.pas
      功能 返回两个字符串的探测字符串是否相同
      说明 Result := Soundex(AText, ALength) = Soundex(AOther, ALength)
      参考 <NULL>
      例子 CheckBox1.Checked := SoundexSimilar(Edit1.Text, Edit2.Text,
      SpinEdit1.Value);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function SoundexCompare(const AText, AOther: string; ALength:
      TSoundexLength = 4): Integer; $[StrUtils.pas
      功能 返回比较两个字符串的探测字符串的结果
      说明 Result := AnsiCompareStr(Soundex(AText, ALength), Soundex(AOther,
      ALength))
      参考 function SysUtils.AnsiCompareStr
      例子 SpinEdit2.Value := SoundexCompare(Edit1.Text, Edit2.Text,
      SpinEdit1.Value);
      ━━━━━━━━━━━━━━━━━━━━━
      首部 function SoundexProc(const AText, AOther: string): Boolean;
      $[StrUtils.pas
      功能 调用SoundexSimilar返回两个字符串的探测字符串是否相同
      说明 系统变量AnsiResemblesProc的默认值
      参考 function StrUtils.AnsiResemblesText
      例子 [var AnsiResemblesProc: TCompareTextProc = SoundexProc;]
      ━━━━━━━━━━━━━━━━━━━━━

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值