常用字符处理函数总结(11.12)

copy 提取字符

ss:=copy(str,pos,num);
从str字符串的pos处开始,截取num个字符的串返回.

例如:

str:='abcdef';
ss:=copy(str,3,2);{'cd'}
ss:=copy(str,4,10);{'def'}

concat 连接字符

concat(str1,str2,.....,strn});
把各自变量连接起来,ps:返回连接后的字符串(长度不能超过255)

例如:

ss:=concat('2020年','要结束了'});{2020年要结束了}

length(str) 测量字符串的长度

返回字符个数,不包括'/0';

pos() 显示某个字符的位置

pos(obj,target);
在target字符串中找出第一个出现obj的第一个字符位置,如果找不到,返回0.

FmtStr和Format

FmtStr 是个过程, 它是用第一个参数来返回结果的; Format 是个函数, 返回值就是格式后的结果。
例如:

s := Format('%s %s %d',['越行勤','越来越棒','2020']);
//或者
FmtStr(s,'%s %s %d',['越行勤','越来越棒','2020']);

这个格式控制符,和c语言几乎一致。Format或者fmtstr的第2(3)个参数多个要用[]装起来。

CompareStr和CompareText 比较字符串

比较两个字符串的大小,CompareStr 区分大小写; CompareText 不区分大小写。
function CompareStr(const S1, S2: string): Integer;

返回值含义
-1S1<S2
0S1=S2
1S1>S2

Trim Trimleft Trimright 删除字符串特定位置的空格(函数)

Trim 删除两遍的空格
TrimLeft 删除坐标的空格
Trimright 删除右边的空格
例如:

ss:=Trim('          越行勤      ');

LastDelimiter 判断一个字符串在这个字符串出现的位置(函数)

例如

i := LastDelimiter('Del','Delphi');//返回的是整型数值 ,
{此时i=3,返回的末尾字符的位置}

intostr floattostr strtoint 等函数

类型转换函数

ExtractStrings 分割字符串(过程)

Delphi分割字符串的函数ExtractStrings,分割的同时还可以去空字符串和去空白(可以自定义),超级好用!!!!。
参数:
ExtractStrings(<分隔符>,<开头忽略的字符>,PChar变量,TStringList变量);
例如:

var
  s: String;
  List: TStringList;
begin
  s := 'about: #delphi; #pascal, programming';
  List := TStringList.Create;
  ExtractStrings([';',',',':'],['#',' '],PChar(s),List);
  //第一个参数是分隔符; 第二个参数是开头被忽略的字符

  ShowMessage(List.Text);  //about
                           //delphi
                           //pascal
                           //programming
  List.Free;
end;

努力成长的程序员