【字符串函数大全】
首部 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, '是', '否') = '否'
参考
1<null>
2例子 Edit3.Text := IfThen(CheckBox1.Checked, Edit1.Text, Edit2.Text);
3━━━━━━━━━━━━━━━━━━━━━
4首部 function LeftStr(const AText: string; const ACount: Integer): string;
5$[StrUtils.pas
6功能 返回字符串AText左边的ACount个字符
7说明 LeftStr('123456', 3) = '123'
8参考 function System.Copy
9例子 Edit3.Text := LeftStr(Edit1.Text, SpinEdit1.Value);
10━━━━━━━━━━━━━━━━━━━━━
11首部 function RightStr(const AText: string; const ACount: Integer): string;
12$[StrUtils.pas
13功能 返回字符串AText右边的ACount个字符
14说明 RightStr('123456', 3) = '456'
15参考 function System.Copy
16例子 Edit3.Text := RightStr(Edit1.Text, SpinEdit1.Value);
17━━━━━━━━━━━━━━━━━━━━━
18首部 function MidStr(const AText: string; const AStart, ACount: Integer):
19string; $[StrUtils.pas
20功能 返回字符串AText从AStart开始的ACount个字符
21说明 其实就是Copy
22参考 function System.Copy
23例子 Edit3.Text := MidStr(Edit1.Text, SpinEdit1.Value, SpinEdit2.Value);
24━━━━━━━━━━━━━━━━━━━━━
25首部 function SearchBuf(Buf: PChar; BufLen: Integer; SelStart, SelLength:
26Integer; SearchString: String; Options: TStringSearchOptions = [soDown]):
27PChar; $[StrUtils.pas
28功能 返回第一个搜索到的指针位置
29说明 这函数常用于文本中搜索字符串
30参考 <null>
31例子
32///////Begin SearchBuf
33function SearchEdit(EditControl: TCustomEdit; const SearchString: String;
34SearchOptions: TStringSearchOptions; FindFirst: Boolean = False): Boolean;
35var
36Buffer, P: PChar;
37Size: Word;
38begin
39Result := False;
40if (Length(SearchString) = 0) then Exit;
41Size := EditControl.GetTextLen;
42if (Size = 0) then Exit;
43Buffer := StrAlloc(Size + 1);
44try
45EditControl.GetTextBuf(Buffer, Size + 1);
46P := SearchBuf(Buffer, Size, EditControl.SelStart, EditControl.SelLength,
47SearchString, SearchOptions);
48if P <> nil then begin
49EditControl.SelStart := P - Buffer;
50EditControl.SelLength := Length(SearchString);
51Result := True;
52end;
53finally
54StrDispose(Buffer);
55end;
56end;
57
58procedure TForm1.Button1Click(Sender: TObject);
59var
60SearchOptions: TStringSearchOptions;
61begin
62SearchOptions := [];
63if CheckBox1.Checked then
64Include(SearchOptions, soDown);
65if CheckBox2.Checked then
66Include(SearchOptions, soMatchCase);
67if CheckBox3.Checked then
68Include(SearchOptions, soWholeWord);
69SearchEdit(Memo1, Edit1.Text, SearchOptions);
70Memo1.SetFocus;
71end;
72///////End SearchBuf
73━━━━━━━━━━━━━━━━━━━━━
74首部 function Soundex(const AText: string; ALength: TSoundexLength = 4):
75string; $[StrUtils.pas
76功能 返回探测字符串
77说明 根据探测法(Soundex)可以找到相进的字符串;http://www.nara.gov/genealogy/coding.html
78参考 <null>
79例子 Edit2.Text := Soundex(Edit1.Text, SpinEdit1.Value);
80━━━━━━━━━━━━━━━━━━━━━
81首部 function SoundexInt(const AText: string; ALength: TSoundexIntLength =
824): Integer; $[StrUtils.pas
83功能 返回探测整数
84说明 ALength的值越大解码准确率越高
85参考 <null>
86例子 SpinEdit2.Value := SoundexInt(Edit1.Text, SpinEdit1.Value);
87━━━━━━━━━━━━━━━━━━━━━
88首部 function DecodeSoundexInt(AValue: Integer): string; $[StrUtils.pas
89功能 返回探测整数的解码
90说明 DecodeSoundexInt(SoundexInt('hello')) 相当于 Soundex('hello')
91参考 <null>
92例子 Edit2.Text := DecodeSoundexInt(SpinEdit2.Value);
93━━━━━━━━━━━━━━━━━━━━━
94首部 function SoundexWord(const AText: string): Word; $[StrUtils.pas
95功能 返回探测文字数值
96说明 没有参数ALength已经固定为4
97参考 <null>
98例子 SpinEdit2.Value := SoundexWord(Edit1.Text);
99━━━━━━━━━━━━━━━━━━━━━
100首部 function DecodeSoundexWord(AValue: Word): string; $[StrUtils.pas
101功能 返回探测文字数值的解码
102说明 DecodeSoundexWord(SoundexWord('hello')) 相当于 Soundex('hello')
103参考 <null>
104例子 Edit2.Text := DecodeSoundexWord(SpinEdit2.Value);
105━━━━━━━━━━━━━━━━━━━━━
106首部 function SoundexSimilar(const AText, AOther: string; ALength:
107TSoundexLength = 4): Boolean; $[StrUtils.pas
108功能 返回两个字符串的探测字符串是否相同
109说明 Result := Soundex(AText, ALength) = Soundex(AOther, ALength)
110参考 <null>
111例子 CheckBox1.Checked := SoundexSimilar(Edit1.Text, Edit2.Text,
112SpinEdit1.Value);
113━━━━━━━━━━━━━━━━━━━━━
114首部 function SoundexCompare(const AText, AOther: string; ALength:
115TSoundexLength = 4): Integer; $[StrUtils.pas
116功能 返回比较两个字符串的探测字符串的结果
117说明 Result := AnsiCompareStr(Soundex(AText, ALength), Soundex(AOther,
118ALength))
119参考 function SysUtils.AnsiCompareStr
120例子 SpinEdit2.Value := SoundexCompare(Edit1.Text, Edit2.Text,
121SpinEdit1.Value);
122━━━━━━━━━━━━━━━━━━━━━
123首部 function SoundexProc(const AText, AOther: string): Boolean;
124$[StrUtils.pas
125功能 调用SoundexSimilar返回两个字符串的探测字符串是否相同
126说明 系统变量AnsiResemblesProc的默认值
127参考 function StrUtils.AnsiResemblesText
128例子 [var AnsiResemblesProc: TCompareTextProc = SoundexProc;]
129━━━━━━━━━━━━━━━━━━━━━
130首部 function NewStr(const S: string): PString; deprecated; $[SysUtils.pas
131功能 返回一个新的字符串指针地址
132说明 字符串S为空时返回NullStr
133参考 procedure System.New
134例子
135////////Begin NewStr,DisposeStr
136procedure TForm1.Button1Click(Sender: TObject);
137var
138P: PString;
139begin
140P := NewStr(Edit1.Text);
141Edit2.Text := P^;
142DisposeStr(P);
143end;
144////////End NewStr,DisposeStr
145━━━━━━━━━━━━━━━━━━━━━
146首部 procedure DisposeStr(P: PString); deprecated; $[SysUtils.pas
147功能 释放字符串指针P资源
148说明 配合函数NewStr使用
149参考 procedure System.Dispose
150例子 <如上参见,如下参见>
151━━━━━━━━━━━━━━━━━━━━━
152首部 procedure AssignStr(var P: PString; const S: string); deprecated;
153$[SysUtils.pas
154功能 将字符串S更新给字符串指针P
155说明 更新值时会释放以前字符串指针的资源
156参考 function SysUtils.NewStr;function SysUtils.DisposeStr
157例子
158////////Begin AssignStr
159procedure TForm1.Button1Click(Sender: TObject);
160var
161P: PString;
162begin
163P := nil;
164AssignStr(P, Edit1.Text);
165Edit2.Text := P^;
166DisposeStr(P);
167end;
168////////End AssignStr
169━━━━━━━━━━━━━━━━━━━━━
170首部 procedure AppendStr(var Dest: string; const S: string); deprecated;
171$[SysUtils.pas
172功能 在字符串Dest后追加字符串S
173说明 相当于Dest := Dest + S;Delphi6已经不建议使用
174参考 <null>
175例子
176////////Begin AppendStr
177procedure TForm1.Button1Click(Sender: TObject);
178var
179S: string;
180begin
181S := Edit2.Text;
182AppendStr(S, Edit1.Text);
183Edit2.Text := S;
184end;
185////////End AppendStr
186━━━━━━━━━━━━━━━━━━━━━
187首部 function UpperCase(const S: string): string; $[SysUtils.pas
188功能 返回字符串S的大写形式
189说明 非小写字符不处理
190参考 procedure System.SetLength
191例子 Edit2.Text := UpperCase(Edit1.Text);
192━━━━━━━━━━━━━━━━━━━━━
193首部 function LowerCase(const S: string): string; $[SysUtils.pas
194功能 返回字符串S的小写形式
195说明 非大写字符不处理
196参考 procedure System.SetLength
197例子 Edit2.Text := LowerCase(Edit1.Text);
198━━━━━━━━━━━━━━━━━━━━━
199首部 function CompareStr(const S1, S2: string): Integer; $[SysUtils.pas
200功能 返回比较两个字符
201说明 当S1>S2返回值>0;当S1<s2返回值<0;当s1=s2返回值=0;区分大小写 <null="" 参考="">
202例子 SpinEdit1.Value := CompareStr(Edit1.Text, Edit2.Text);
203━━━━━━━━━━━━━━━━━━━━━
204首部 function CompareMem(P1, P2: Pointer; Length: Integer): Boolean;
205assembler; $[SysUtils.pas
206功能 返回比较两个内存指针
207说明 CompareMem(PChar('12a'), PChar('12c'), 2)=True;CompareMem(PChar('12a'),
208PChar('12c'), 3)=False
209参考 <null>
210例子 CheckBox1.Checked := CompareMem(Self, Form1, 8);
211━━━━━━━━━━━━━━━━━━━━━
212首部 function CompareText(const S1, S2: string): Integer; $[SysUtils.pas
213功能 返回比较两个字符串
214说明 不区分大小写
215参考 <null>
216例子 SpinEdit1.Value := CompareText(Edit1.Text, Edit2.Text);
217━━━━━━━━━━━━━━━━━━━━━
218首部 function SameText(const S1, S2: string): Boolean; $[SysUtils.pas
219功能 返回两个字符串是否相等
220说明 不区分大小写
221参考 <null>
222例子 CheckBox1.Checked := SameText(Edit1.Text, Edit2.Text);
223━━━━━━━━━━━━━━━━━━━━━
224首部 function AnsiUpperCase(const S: string): string; $[SysUtils.pas
225功能 返回字符串S的大写形式
226说明 ANSI(American National Standards Institute)美国国家标准协会;非小写的字符不变
227参考 function Windows.CharUpperBuff
228例子 Edit2.Text := AnsiUpperCase(Edit1.Text);
229━━━━━━━━━━━━━━━━━━━━━
230首部 function AnsiLowerCase(const S: string): string; $[SysUtils.pas
231功能 返回字符串S的小写形式
232说明 非大写字符不处理
233参考 function Windows.CharLowerBuff
234例子 Edit2.Text := AnsiLowerCase(Edit1.Text);
235━━━━━━━━━━━━━━━━━━━━━
236首部 function AnsiCompareStr(const S1, S2: string): Integer; $[SysUtils.pas
237功能 反回比较两个字符串
238说明 当S1>S2返回值>0;当S1<s2返回值<0;当s1=s2返回值=0;区分大小写 $[sysutils.pas="" :="AnsiSameStr(Edit1.Text," ansicomparetext(const="" ansisamestr(const="" boolean;="" checkbox1.checked="" edit2.text);="" function="" integer;="" s1,="" s2:="" spinedit1.value="" string):="" sysutils.ansicomparestr="" windows.comparestring="" ━━━━━━━━━━━━━━━━━━━━━="" 例子="" 功能="" 区分大小写="" 参考="" 反回比较两个字符串="" 当s1="" 说明="" 返回两个字符串是否相等="" 首部="">S2返回值>0;当S1<s2返回值<0;当s1=s2返回值=0;不区分大小写 $[sysutils.pas="" :="AnsiSameText(Edit1.Text," ansisametext(const="" ansistrcomp(s1,="" boolean;="" checkbox1.checked="" edit2.text);="" function="" integer;="" pchar):="" s1,="" s2:="" spinedit1.value="" string):="" sysutils.ansicomparetext="" windows.comparestring="" ━━━━━━━━━━━━━━━━━━━━━="" 不区分大小写="" 例子="" 功能="" 参考="" 当s1="" 说明="" 返回两个字符串是否相等="" 返回比较两个指针字符串="" 首部="">S2返回值>0;当S1<s2返回值<0;当s1=s2返回值=0;区分大小写 $[sysutils.pas="" :="AnsiStrComp(PChar(Edit1.Text)," ansistricomp(s1,="" function="" integer;="" pchar(edit2.text))="" pchar):="" s2:="" spinedit1.value="" system.comparestring="" ━━━━━━━━━━━━━━━━━━━━━="" 例子="" 功能="" 参考="" 当s1="" 说明="" 返回比较两个指针字符串="" 首部="">S2返回值>0;当S1<s2返回值<0;当s1=s2返回值=0;不区分大小写;ignore(忽略) $[sysutils.pas="" :="AnsiStrIComp(PChar(Edit1.Text)," ansistrlcomp(s1,="" cardinal):="" function="" integer;="" maxlen:="" pchar(edit2.text))="" pchar;="" s2:="" spinedit1.value="" windows.comparestring="" ━━━━━━━━━━━━━━━━━━━━━="" 例子="" 功能="" 参考="" 当s1="" 说明="" 返回比较两个指针字符串指定长度="" 首部="">S2返回值>0;当S1<s2返回值<0;当s1=s2返回值=0;区分大小写;length(长度) $[sysutils.pas="" :="AnsiStrLComp(PChar(Edit1.Text)," ansistrlicomp(s1,="" cardinal):="" function="" integer;="" maxlen:="" pchar(edit2.text),="" pchar;="" s2:="" spinedit1.value="" spinedit2.value)="" windows.comparestring="" ━━━━━━━━━━━━━━━━━━━━━="" 例子="" 功能="" 参考="" 当s1="" 说明="" 返回比较两个指针字符串指定长度="" 首部="">S2返回值>0;当S1<s2返回值<0;当s1=s2返回值=0;不区分大小写 $[sysutils.pas="" :="WideLowerCase(Edit1.Text);" ansilastchar(const="" ansistrlastchar(p:="" ansistrlower(str:="" ansistrupper(str:="" edit2.text="" function="" integer;="" pchar(edit2.text),="" pchar):="" pchar;="" s1,="" s2:="" s:="" spinedit1.value="" spinedit2.value)="" string):="" sysutils.bytetype="" widechar双字节字符="" widecomparestr(const="" widelowercase(const="" widestring):="" widestring;="" wideuppercase(const="" windows.charlower="" windows.charlowerbuffw="" windows.charupper="" windows.charupperbuffw="" windows.comparestring="" ━━━━━━━━━━━━━━━━━━━━━="" 例子="" 功能="" 参考="" 当s1="" 当字符串p为空空指针则返回空指针="" 当字符串s为空串则返回空指针="" 我怎么就测试不出来呢="" 说明="" 返回双字节字符串的大写形式="" 返回双字节字符串的小写形式="" 返回字符串s的最后一个指针字符="" 返回指针字符串p的最后一个指针字符="" 返回指针字符串大写形式="" 返回指针字符串小写形式="" 返回比较两个双字节字符串="" 非大写字符不处理="" 非小写字符不处理="" 首部="">S2返回值>0;当S1<s2返回值<0;当s1=s2返回值=0;区分大小写 $[sysutils.pas="" :="WideSameStr(Edit1.Text," boolean;="" checkbox1.checked="" edit2.text);="" function="" integer;="" s1,="" s2:="" spinedit1.value="" sysutils.widecomparestr="" widecomparetext(const="" widesamestr(const="" widestring):="" windows.comparestringw="" ━━━━━━━━━━━━━━━━━━━━━="" 例子="" 功能="" 区分大小写="" 参考="" 当s1="" 说明="" 返回两个双字节字符串是否相同="" 返回比较两个双字节字符串="" 首部="">S2返回值>0;当S1<s2返回值<0;当s1=s2返回值=0;不区分大小写 #13#10'2'#13#10="" #13#10'2'#13#10;adjustlinebreaks('1'#10'2'#10)="1" $[sysutils.pas="" '"')='"hello""world"' '"');="" '@')='@hello"world@' ,="" :="AnsiDequotedStr(Edit1.Text," ;ansiquotedstr('hello"world'="" <null="" adjustlinebreaks('1'#13'2'#13)="1" adjustlinebreaks(const="" ansidequotedstr(const="" ansiextractquotedstr="" ansiextractquotedstr(var="" ansiquotedstr('hello"world',="" ansiquotedstr(const="" aquote:="" begin="" boolean;="" char):="" checkbox1.checked="" edit2.text="" edit2.text);="" edit3.text="" end="" end;="" function="" lf序列="" linux}="" mswindows}="" overload;="" p="" p:="" pchar;="" procedure="" quote:="" quotedstr(const="" s1,="" s2:="" s:="" spinedit1.value="" src:="" string):="" string;="" style:="" system.copy="" system.insert="" sysutils.ansiextractquotedstr="" sysutils.ansistrscan="" sysutils.strnextchar="" sysutils.widecomparetext="" tform1.button1click(sender:="" tlbscrlf="" tlbslf="" tobject);="" trim(const="" trimleft(const="" trimright(const="" ttextlinebreakstyle="{$IFDEF" var="" widesametext(const="" widestring):="" widestring;="" windows.comparestringw="" {$endif}="" {$endif}):="" {$ifdef="" ━━━━━━━━━━━━━━━━━━━━━="" 不区分大小写="" 例子="" 功能="" 单引号中的一个单引号将转成两个="" 参考="" 小于#32的字符看作不可见字符="" 表现形式非法时src不变否则为空="" 表现形式非法时则返回s="" 说明="" 返回两个双字节字符串是否相同="" 返回以字符aquote为引号的表现形式原形="" 返回以字符quote为引号的表现形式原形="" 返回字符串s以字符quote为引号的表现形式="" 返回字符串s在pascal中的表现形式="" 返回将给定字符串的行分隔符调整为cr="" 返回除去字符串s右边不可见字符="" 返回除去字符串s左右不可见字符="" 返回除去字符串s左边不可见字符="" 首部="">
239━━━━━━━━━━━━━━━━━━━━━
240首部 function IsValidIdent(const Ident: string): Boolean; $[SysUtils.pas
241功能 返回字符串Ident是否是正确的标识符
242说明 标识符::字母|下划线[字母|下划线|数字]...
243参考 <null>
244例子 CheckBox1.Checked := IsValidIdent(Edit1.Text);
245━━━━━━━━━━━━━━━━━━━━━
246首部 function IntToStr(Value: Integer): string; overload; $[SysUtils.pas
247首部 function IntToStr(Value: Int64): string; overload; $[SysUtils.pas
248功能 返回整数Value转换成字符串
249说明 Format('%d', [Value])
250参考 function SysUtils.FmtStr
251例子 Edit2.Text := IntToStr(SpinEdit1.Value);
252━━━━━━━━━━━━━━━━━━━━━
253首部 function IntToHex(Value: Integer; Digits: Integer): string; overload;
254$[SysUtils.pas
255首部 function IntToHex(Value: Int64; Digits: Integer): string; overload;
256$[SysUtils.pas
257功能 返回整数Value转换成十六进制表现结果;Format('%.*x', [Digits, Value])
258说明 参数Digits指定字符最小宽度;最小宽度不足时将用0填充
259参考 function SysUtils.FmtStr
260例子 Edit2.Text := IntToHex(SpinEdit1.Value, SpinEdit2.Value);
261━━━━━━━━━━━━━━━━━━━━━
262首部 function StrToInt(const S: string): Integer; $[SysUtils.pas
263功能 返回字符串S转换成整数
264说明 字符串非整数表达时将引起异常
265参考 procedure System.Val
266例子 SpinEdit1.Value := StrToInt(Edit1.Text);
267━━━━━━━━━━━━━━━━━━━━━
268首部 function StrToIntDef(const S: string; Default: Integer): Integer;
269$[SysUtils.pas
270功能 返回字符串S转换成整数
271说明 字符串非整数表达时则返回默认值Default
272参考 procedure System.Val
273例子 SpinEdit1.Value := StrToIntDef(Edit1.Text, 0);
274━━━━━━━━━━━━━━━━━━━━━
275首部 function TryStrToInt(const S: string; out Value: Integer): Boolean;
276$[SysUtils.pas
277功能 返回字符串S转换成整数Value是否成功
278说明 字符串非整数表达时返回False并且Value将输出为0
279参考 procedure System.Val
280例子
281///////Begin TryStrToInt
282procedure TForm1.Button1Click(Sender: TObject);
283var
284I: Integer;
285begin
286CheckBox1.Checked := TryStrToInt(Edit1.Text, I);
287SpinEdit1.Value := I;
288end;
289///////End TryStrToInt
290━━━━━━━━━━━━━━━━━━━━━
291首部 function StrToInt64(const S: string): Int64; $[SysUtils.pas
292功能 返回字符串S转换成六十四位整数
293说明 字符串非六十四位整数表达时将引起异常
294参考 procedure System.Val
295例子 SpinEdit1.Value := StrToInt64(Edit1.Text);
296━━━━━━━━━━━━━━━━━━━━━
297首部 function StrToInt64Def(const S: string; const Default: Int64): Int64;
298$[SysUtils.pas
299功能 返回字符串S转换成六十四位整数
300说明 字符串非六十四位整数表达时则返回默认值Default
301参考 procedure System.Val
302例子 SpinEdit1.Value := StrToInt64Def(Edit1.Text, 0);
303━━━━━━━━━━━━━━━━━━━━━
304首部 function TryStrToInt64(const S: string; out Value: Int64): Boolean;
305$[SysUtils.pas
306功能 返回字符串S转换成六十四位整数Value是否成功
307说明 字符串非六十四位整数表达时返回False并且Value将输出为0
308参考 procedure System.Val
309例子
310///////Begin TryStrToInt64
311procedure TForm1.Button1Click(Sender: TObject);
312var
313I: Int64;
314begin
315CheckBox1.Checked := TryStrToInt64(Edit1.Text, I);
316SpinEdit1.Value := I;
317end;
318///////End TryStrToInt64
319━━━━━━━━━━━━━━━━━━━━━
320首部 function StrToBool(const S: string): Boolean; $[SysUtils.pas
321功能 返回字符串S转换成逻辑值
322说明 字符非逻辑表达时将引起异常
323参考 function SysUtils.TryStrToBool
324例子 CheckBox1.Checked := StrToBool(Edit1.Text);
325━━━━━━━━━━━━━━━━━━━━━
326首部 function StrToBoolDef(const S: string; const Default: Boolean):
327Boolean; $[SysUtils.pas
328功能 返回字符串S转换成逻辑值
329说明 字符非逻辑表达时则返回默认值Default
330参考 function SysUtils.TryStrToBool
331例子 CheckBox1.Checked := StrToBoolDef(Edit1.Text, False);
332━━━━━━━━━━━━━━━━━━━━━
333首部 function TryStrToBool(const S: string; out Value: Boolean): Boolean;
334$[SysUtils.pas
335功能 返回字符串S转换成逻辑值Value是否成功
336说明 [注意]0为假非0为真;不是'True'和'False';Delphi6 Bug 如下修正
337参考 function SysUtils.AnsiSameText;var SysUtils.TrueBoolStrs;var
338SysUtils.FalseBoolStrs
339例子
340///////Begin TryStrToBool
341procedure TForm1.Button1Click(Sender: TObject);
342var
343B: Boolean;
344begin
345SetLength(TrueBoolStrs, 2);
346SetLength(FalseBoolStrs, 2);
347TrueBoolStrs[0] := 'True';
348FalseBoolStrs[0] := 'False';
349TrueBoolStrs[1] := 'Yes';
350FalseBoolStrs[1] := 'No';
351CheckBox1.Checked := TryStrToBool(Edit1.Text, B);
352CheckBox2.Checked := B;
353end;
354///////End TryStrToBool
355附加
356///////Begin TryStrToBool
357function TryStrToBool(const S: string; out Value: Boolean): Boolean;
358function CompareWith(const aArray: array of string): Boolean;
359var
360I: Integer;
361begin
362Result := False;
363for I := Low(aArray) to High(aArray) do
364if AnsiSameText(S, aArray[I]) then
365begin
366Result := True;
367Break;
368end;
369end;
370var
371LResult: Extended;
372begin
373Result := TryStrToFloat(S, LResult);
374if Result then
375Value := LResult <> 0
376else
377begin
378Result := True; //修正处
379VerifyBoolStrArray;
380if CompareWith(TrueBoolStrs) then
381Value := True
382else if CompareWith(FalseBoolStrs) then
383Value := False
384else
385Result := False;
386end;
387end;
388///////End TryStrToBool
389━━━━━━━━━━━━━━━━━━━━━
390首部 function BoolToStr(B: Boolean; UseBoolStrs: Boolean = False): string;
391$[SysUtils.pas
392功能 返回逻辑值B转换成字符串
393说明 BoolToStr(False, False)='0';BoolToStr(False, True)='-1'
394参考 var SysUtils.TrueBoolStrs;var SysUtils.FalseBoolStrs
395例子 Edit1.Text := BoolToStr(CheckBox1.Checked, CheckBox2.Checked);
396━━━━━━━━━━━━━━━━━━━━━
397首部 function LoadStr(Ident: Integer): string; $[SysUtils.pas
398功能 返回根据标识Ident的字符串资源
399说明 字符串资源是指程序的内部资源
400参考 function SysUtils.FindStringResource
401例子 Edit2.Text := LoadStr(StrToIntDef(Edit1.Text, 0));
402━━━━━━━━━━━━━━━━━━━━━
403首部 function FmtLoadStr(Ident: Integer; const Args: array of const):
404string; $[SysUtils.pas
405功能 返回格式化的字符串资源
406说明 字符串资源是指程序的内部资源
407参考 function SysUtils.FmtStr;function SysUtils.FindStringResource
408例子 <null>;
409━━━━━━━━━━━━━━━━━━━━━
410首部 function StrLen(const Str: PChar): Cardinal; $[SysUtils.pas
411功能 返回指针字符串的长度
412说明 当指针字符串Str为nil时将触发异常
413参考 <null>
414例子 SpinEdit2.Value := StrLen(PChar(Edit1.Text));
415━━━━━━━━━━━━━━━━━━━━━
416首部 function StrEnd(const Str: PChar): PChar; $[SysUtils.pas
417功能 返回指针字符串的结尾
418说明 当指针字符串Str为nil时将触发异常
419参考 <null>
420例子 Edit2.Text := StrEnd(PChar(Edit1.Text)) - SpinEdit1.Value;
421━━━━━━━━━━━━━━━━━━━━━
422首部 function StrMove(Dest: PChar; const Source: PChar; Count: Cardinal):
423PChar; $[SysUtils.pas
424功能 返回将指针字符串Source指定内存数量Count复制覆盖到指针字符串Dest中
425说明 Dest没有分配资源将触发异常s
426参考 function System.Move
427例子
428///////Begin StrMove
429procedure TForm1.Button1Click(Sender: TObject);
430var
431vBuffer: PChar;
432begin
433vBuffer := '0123456789';
434StrMove(vBuffer, PChar(Edit1.Text), SpinEdit1.Value);
435Edit2.Text := vBuffer;
436end;
437///////End StrMove
438━━━━━━━━━━━━━━━━━━━━━
439首部 function StrCopy(Dest: PChar; const Source: PChar): PChar;
440$[SysUtils.pas
441功能 返回将指针字符串Source复制到指针字符串Dest中
442说明 Dest应已经分配足够的空间非则将触发异常
443参考 <null>
444例子
445///////Begin StrCopy
446procedure TForm1.Button1Click(Sender: TObject);
447var
448vBuffer: PChar;
449begin
450GetMem(vBuffer, Length(Edit1.Text) + 1);
451StrCopy(vBuffer, PChar(Edit1.Text));
452Edit2.Text := vBuffer;
453FreeMem(vBuffer);
454end;
455///////End StrCopy
456━━━━━━━━━━━━━━━━━━━━━
457首部 function StrECopy(Dest:PChar; const Source: PChar): PChar;
458$[SysUtils.pas
459功能 返回将指针字符串Source复制到指针字符串Dest中的结尾
460说明 可以连接指针字符串
461参考 <null>
462例子
463///////Begin StrECopy
464procedure TForm1.Button1Click(Sender: TObject);
465var
466vBuffer: array[0..255] of Char;
467begin
468StrECopy(StrECopy(vBuffer, PChar(Edit1.Text)), PChar(Edit2.Text));
469Edit3.Text := vBuffer;
470end;
471///////End StrECopy
472━━━━━━━━━━━━━━━━━━━━━
473首部 function StrLCopy(Dest: PChar; const Source: PChar; MaxLen: Cardinal):
474PChar; $[SysUtils.pas
475功能 返回将指针字符串Source指定长度MaxLen复制到指针字符串Dest中
476说明 Dest应已经分配足够的空间非则将触发异常
477参考 <null>
478例子
479///////Begin StrLCopy
480procedure TForm1.Button1Click(Sender: TObject);
481var
482vBuffer: array[0..255] of Char;
483begin
484StrLCopy(vBuffer, PChar(Edit1.Text), SpinEdit1.Value);
485Edit2.Text := vBuffer;
486end;
487///////End StrLCopy
488━━━━━━━━━━━━━━━━━━━━━
489首部 function StrPCopy(Dest: PChar; const Source: string): PChar;
490$[SysUtils.pas
491功能 返回将指针字符串Source复制到指针字符串Dest中
492说明 StrLCopy(Dest, PChar(Source), Length(Source))
493参考 function SysUtils.StrLCopy
494例子
495///////Begin StrPCopy
496procedure TForm1.Button1Click(Sender: TObject);
497var
498vBuffer: array[0..255] of Char;
499begin
500StrPCopy(vBuffer, PChar(Edit1.Text));
501Edit2.Text := vBuffer;
502end;
503///////End StrPCopy
504━━━━━━━━━━━━━━━━━━━━━
505首部 function StrPLCopy(Dest: PChar; const Source: string; MaxLen:
506Cardinal): PChar; $[SysUtils.pas
507功能 返回将字符串Source指定长度MaxLen复制到指针字符串Dest中
508说明 StrLCopy(Dest, PChar(Source), MaxLen)
509参考 function SysUtils.StrLCopy
510例子
511///////Begin StrPLCopy
512procedure TForm1.Button1Click(Sender: TObject);
513var
514vBuffer: array[0..255] of Char;
515begin
516StrPLCopy(vBuffer, Edit1.Text, SpinEdit1.Value);
517Edit2.Text := vBuffer;
518end;
519///////End StrPLCopy
520━━━━━━━━━━━━━━━━━━━━━
521首部 function StrCat(Dest: PChar; const Source: PChar): PChar;
522$[SysUtils.pas
523功能 返回连接指针字符串Dest和指针字符串Source
524说明 StrCopy(StrEnd(Dest), Source)
525参考 function SysUntils.StrCopy
526例子
527///////Begin StrCat
528procedure TForm1.Button1Click(Sender: TObject);
529var
530vBuffer: array[0..255] of Char;
531begin
532StrPCopy(vBuffer, Edit1.Text);
533StrCat(vBuffer, PChar(Edit2.Text));
534Edit3.Text := vBuffer;
535end;
536///////End StrCat
537━━━━━━━━━━━━━━━</null></null></null></null></null></null></null></s2返回值<0;当s1=s2返回值=0;不区分大小写></s2返回值<0;当s1=s2返回值=0;区分大小写></s2返回值<0;当s1=s2返回值=0;不区分大小写></s2返回值<0;当s1=s2返回值=0;区分大小写;length(长度)></s2返回值<0;当s1=s2返回值=0;不区分大小写;ignore(忽略)></s2返回值<0;当s1=s2返回值=0;区分大小写></s2返回值<0;当s1=s2返回值=0;不区分大小写></s2返回值<0;当s1=s2返回值=0;区分大小写></null></null></null></s2返回值<0;当s1=s2返回值=0;区分大小写></null></null></null></null></null></null></null></null></null>