📄 delphifunction.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0078)http://bbs.ustc.edu.cn/cgi-bin/bbsgcon?board=Delphi&file=G.1082621065.A&num=91 -->
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=gb2312"><LINK
href="DelphiFunction.files/bbs.css" type=text/css rel=stylesheet>
<META content="MSHTML 6.00.2800.1106" name=GENERATOR></HEAD>
<BODY>
<CENTER>瀚海星云 -- 文章阅读 [讨论区: Delphi]
<HR>
<TABLE width="90%" border=0>
<TBODY>
<TR>
<TD><PRE>发信人: salamander (大雨初歇), 信区: Delphi
标 题: Delphi函数大全(希望大家喜欢)
发信站: 瀚海星云 (2004年04月22日16:04:40 星期四), 转信
首部 function AnsiResemblesText(const AText, AOther: string): Boolean;
$[StrUt
ils.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;
$[StrU
tils.pas
功能 返回字符串AText是否包含子串ASubText
说明 不区分大小写
参考 function StrUtils.AnsiUppercase; function StrUtils.AnsiPos
例子 CheckBox1.Checked := AnsiContainsText(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiStartsText(const ASubText, AText: string): Boolean;
$[StrUti
ls.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
strin
g): 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
strin
g): 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;
$[StrUt
ils.pas
功能 返回字符串AText是否包含子串ASubText
说明 区分大小写
参考 function StrUtils.AnsiPos
例子 CheckBox1.Checked := AnsiContainsStr(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiStartsStr(const ASubText, AText: string): Boolean;
$[StrUtil
s.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;
$[StrU
tils.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;
cons
t ASubText: string): string; $[StrUtils.pas
功能 返回嵌套字符串
说明 AStart:嵌套开始位置;ALength:嵌套长度;StuffString('abcd', 2, 0, '12') =
'a
12bcd'
参考 function System.Copy
例子 Edit3.Text := StuffString(Edit1.Text, SpinEdit1.value,
SpinEdit2.value, E
dit2.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;
$[S
trUtils.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):
stri
ng; $[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:
Inte
ger; 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):
strin
g; $[StrUtils.pas
功能 返回探测字符串
说明 根据探测法(Soundex)可以找到相进的字符串;<A href="http://www.nara.gov/genealogy/co" target=_blank>http://www.nara.gov/genealogy/co</A>
d
ing.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:
TSoundexLen
gth = 4): Boolean; $[StrUtils.pas
功能 返回两个字符串的探测字符串是否相同
说明 Result := Soundex(AText, ALength) = Soundex(AOther, ALength)
参考 <NULL>
例子 CheckBox1.Checked := SoundexSimilar(Edit1.Text, Edit2.Text,
SpinEdit1.val
ue);
━━━━━━━━━━━━━━━━━━━━━
首部 function SoundexCompare(const AText, AOther: string; ALength:
TSoundexLen
gth = 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.pa
s
功能 调用SoundexSimilar返回两个字符串的探测字符串是否相同
说明 系统变量AnsiResemblesProc的默认值
参考 function StrUtils.AnsiResemblesText
例子 [var AnsiResemblesProc: TCompareTextProc = SoundexProc;]
━━━━━━━━━━━━━━━━━━━━━
首部 function Languages: TLanguages; $[SysUtils.pas
功能 返回系统语言对象
说明 通过此函数可以得到系统的语言环境
参考 type SysUtils.TLanguages
例子
///////Begin Languages
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
Memo1.Clear;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -