delphi字符串操作集
1.copy
字符串的复制操作,有3个参数:
copy(源数据,复制起始位置(含),复制长度)
2.LeftStr ,RightStr (所在单元:StrUtils)
功能说明:返回字符串左(右)边指定个数的新字符(串)。该函数有两个参数。第一个参数为完整的字符串,第二个参数为指定个数。
LeftStr(源数据,长度),RightStr (源数据,长度)
3.concat
连接字符串函数,跟+号功能一样,效率要比+号高,只连接字符串。用法:concat(string1,string2,stringN)
-
delete 删除函数用法:delete(字符串,删除开始位置,删除长度);
-
insert 插入函数用法:insert(插入的文本,原文本,插入位置);
-
length 统计指定字符串的长度。
-
AnsiUpperCase将字符串中的英文转换为大写。
-
AnsiLowerCase将字符串中的英文转换为小写。
-
AnsiPos查找字符串所在位置。有2个参数。第一个参数是要查找的字符,第二个为被查找的字符。注意:AnsiPos函数在查找时是要区分字符大小的。如果要实现不区分大小,那么需要使用UpperCase或LowerCase函数将两个参数的字符(串)转换为“大写”或“小写”再进行查找。用法是:AnsiPos(要查询的字符,被查询字符)返回一个布尔型。
-
Trim,TrimRight,TrimLeft
功能说明:trim删除字符串左右两边的空格(无论左右两边有多少个空格均被全部删除),TrimRight,TimLeft单独删除左右两边的空格。
procedure TForm22.bt1Click(Sender: TObject);
var
str1, str2: string;
ind: Integer;
begin
str1 := Edit1.Text;
str2 := Edit2.Text;
ind := AnsiPos(str1,str2);
if ind <= 0 then
begin
Label3.Caption := ‘没有找到‘ + str2+‘,返回代码:‘+IntToStr(ind);
end;
if ind > 0 then
begin
Label3.Caption := ‘已经找到位于:‘ + IntToStr(ind);
end;
end;
procedure TForm22.bt2Click(Sender: TObject);
var
s1, s2, s3: string;
in1, nlen2: Integer;
begin
s1 := ‘hello word‘;
s2 := Copy(s1, 7, 4);
Memo1.Clear;
Memo1.Lines.Add(s2); //word
Memo1.Lines.Add(LeftStr(s1, 5)); //hello
Memo1.Lines.Add(RightStr(s1, 4)); //word
s2 := Concat(LeftStr(s1, 5), RightStr(s1, 4), ‘88‘, ‘测试‘ + ‘文本‘);
Memo1.Lines.Add(s2); //helloword88测试文本
Delete(s2, 2, 4);
s3 := s2; //直接写s3:=Delete(s2,2,4);会报错。
Memo1.Lines.Add(s3); // hword88测试文本
Insert(‘ello‘, s3, 2);
Memo1.Lines.Add(s3); //helloword88测试文本
in1 := Length(s3);
Memo1.Lines.Add(IntToStr(in1)); //15
s3 := ‘蓝海科技‘;
in1 := Length(s3);
Memo1.Lines.Add(IntToStr(in1)); //4
Memo1.Lines.Add(‘长度为:‘ + IntToStr(s3.Length)); //4
s3 := ‘LHKJ‘;
in1 := Length(s3);
Memo1.Lines.Add(IntToStr(in1)); //4
s3 := ‘Lanhai王阳‘;
s3 := AnsiUpperCase(s3);
Memo1.Lines.Add(s3); //LANHAI王阳
s3 := AnsiLowerCase(s3);
Memo1.Lines.Add(s3); //lanhai王阳
s3 := ‘ Lanhai王 阳 ‘;
Memo1.Lines.Add(Trim(s3)); //Lanhai王阳两边没空格)
Memo1.Lines.Add((s3)); // Lanhai王阳 (两边有空格)
memo1.Lines.Add(TrimRight(s3)); // Lanhai王阳(左边有空格)
memo1.Lines.Add(TrimLeft(s3)); //Lanhai王阳 (右边有空格)
SetLength(s3, 5); //设置S3长度为5的字符串
memo1.Lines.Add(TrimLeft(s3)); //L
end;