Delphi 10.3.X 截取字符串函数subString 和copy()对应C# subString 及 String 常用字串符处理函数用法

【转载原文制表 龟山阿卍】欢迎加入Delphi开发局QQ群:32422310

Delphi 在面对跨平台开发,程序语言也改进不少,不过有些改进,让原本 Delphi 开发者有些不适应,最显注的就是字串处理函数了,原本 Pascal 语言字串起始由 1 开始,几乎是它的经典了,新版本字串由 0 开始,这个改变,让很多人不适应,也多有抱怨,虽然 Delphi 尽量保有相容性,但如果要写出一码,跨所有平台,还是建议全部采用新的写法(由0开始),才是一劳永逸的做法,下面就整理常用字串处理函数新旧对照表。

老版本Delphi里没有subString
只有Copy()
Copy(s, index, count)
其中s,主字符串, index是要拷的起点,count是要拷的字符数
如:Copy('heisetoufa', 3, 4),结果为'seto'

Delphi String 常用字串符处理函数:

说明旧写法(Windows 平台)由1开始新写法(跨所有平台)由0开始
插入字串Insert('str', Str, 1);Str := Str.Insert(0, 'str');
删除字串Delete(Str, 1, 1);Str := Str.Remove(0);
Str := Str.Remove(0, 1);
复制字串Str := Copy(Str, 1, 2);Str := Str.Substring(0, 2);
转成大写UpperCase(Str);Str := Str.ToUpper;
转成小写LowerCase(Str);Str := Str.ToLower;
重复字符StringOfChar('-', 15);Str := String.Cretae('-', 15);
找子字符Pos('ABC123', Str);i := Str.IndexOf('ABC123');
是这些字CharInSet(Str[1], [' ',#13]);Str.Chars[0].IsInArray([' ',#13]);

C#语言:

string sceneName = "12-手机122345678";
sceneName = sceneName.Substring(0, sceneName.IndexOf('-'));

Delphi语言实现相同的功能,分别使用了Copy和Substring函数:欢迎加入Delphi开发局QQ群:32422310

var
  sceneName :string;
begin
  sceneName :=  '12-手机122345678';
  sceneName := sceneName.Substring(0,sceneName.IndexOf('-'));//正确
end;

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值