首页 > 其他分享 >Delphi 字符串拆分/分割[1] - TStringList

Delphi 字符串拆分/分割[1] - TStringList

时间:2023-05-12 09:36:43浏览次数:42  
标签:TStringList Delphi bbb Strs strs 拆分 constr ShowMessage

1、TStringList 默认以 ','拆分字符

onst

constr :String = 'aaa,bbb,ccc,ddd';
var
strs :TStrings;
i :Integer;
begin
strs := TStringList.Create;
strs.CommaText := constr;
for i := 0 to Strs.Count-1 do
ShowMessage(Strs[i]); //aaa bbb ccc ddd
end;
2、通过 Delimiter 定义分割字符
const
constr :String = 'aaa\bbb\ccc\ddd';
var
strs :TStrings;
i :Integer;
begin
strs := TStringList.Create;
strs.Delimiter := '\';
strs.DelimitedText := constr;
for i := 0 to Strs.Count-1 do
ShowMessage(Strs[i]);
end;
const
constr :String = '"aaa"\"bbb"\"ccc"\"ddd"';
var
strs :TStrings;
i :Integer;
begin
strs := TStringList.Create;
strs.Delimiter := '\';
strs.DelimitedText := constr;
for i := 0 to Strs.Count-1 do
ShowMessage(Strs[i]);
end;
3、增加 QuoteChar 属性 分割
const
constr :String = '|aaa|\|bbb|\|ccc|\|ddd|';
var
strs :TStrings;
i :Integer;
begin
strs := TStringList.Create;
strs.Delimiter := '\';
strs.QuoteChar := '|'; //QuoteChar。其默认值为:'"'(不包括单引号)
strs.DelimitedText := constr;
for i := 0 to Strs.Count-1 do
ShowMessage(Strs[i]);
end;
4、通过 Names & Values & ValueFromIndex
const
constr :String = '0=aaa,1=bbb,2=ccc,3=ddd';
var
strs :TStrings;
i :Integer;
begin
strs := TStringList.Create;
strs.CommaText := constr;
for i := 0 to strs.Count-1 do
begin
ShowMessage(strs.Names[i]);
ShowMessage(strs.Values[strs.Names[i]]);
ShowMessage(strs.ValueFromIndex[i]);
end;
end;

标签:TStringList,Delphi,bbb,Strs,strs,拆分,constr,ShowMessage
From: https://www.cnblogs.com/lucken2000/p/17392811.html

相关文章

  • 343. 整数拆分
    给定一个正整数n,将其拆分为k个正整数的和(k>=2),并使这些整数的乘积最大化。返回你可以获得的最大乘积。输入:n=2输出:1解释:2=1+1,1×1=1。我的解法classSolution{public:intintegerBreak(intn){intdp[59];dp[0]......
  • delphi模板引擎
    programExample;usesSempare.Template;typeTInformation=recordname:string;favourite_sport:string;count:integer;end;beginvartpl:=Template.Parse('Mynameis<%name%>.'#13#10+'Myfavouritesportis<%......
  • Delphi中使用ADO连接Excel
    第一部分: 1.设置ADOConnection的ConnectionString属性的OLEDB的提供者要选择MicrosoftJet4.0OLEDBProvider(这本来是用于连接Access数据库的驱动程序,但也可打开Excel文件),按"下一步"按钮2.选择数据库名称。注意:Excel的扩展名是*.xls,而默认文件类型是MicrosoftAcce......
  • Delphi 检测密码强度 规则(仿 google)
    一、密码长度:5分:小于等于4个字符10分:5到7字符25分:大于等于8个字符二、字母:0分:没有字母10分:全都是小(大)写字母20分:大小写混合字母三、数字:0分:没有数字10分:1个数字20分:大于等于3个数字四、符号:0分:没有符号10分:1......
  • delphi 遍历枚举、获取枚举值的名称
    遍历枚举、获取枚举值的名称代码遍历枚举usesSystem.TypInfo;procedureTForm1.Button1Click(Sender:TObject);varI:TAlign;beginforI:=Low(TAlign)toHigh(TAlign)dobeginMemo1.Lines.Add('名称'+GetEnumName(TypeInfo(TAlign),Ord(I))+'值......
  • delphi执行外部程序并等待结束返回响应
    //写成函数需要引用ShellAPI单元;functionExecuteFileWait(ExecuteFile:string):Integer;//实现执行外部程序,并等待程序结束的函数,返回值为1varSEInfo:TShellExecuteInfo;ExitCode:DWORD;ParamString,StartInString:string;beginFillChar(SEInfo,S......
  • linux下拆分PDF、批量裁剪图片及合并为PDF操作
    好久不碰代码,文件操作啥的快忘光了(你丫本来就没怎么学吧!)我先放两串代码在这QAQ拆分PDFpdftoppm-png?.pdfs批量裁剪图片裁剪图片指令,这个指令是ImageMagick带的一个什么东西,单位电脑能装convertsrc.png-crop长x高+起始像素点横坐标+起始像素低纵坐标dest.png然后......
  • python中以空格将字符串拆分为两部分
      001、>>>importre>>>tmp=re.match(r'^([^\s]+)\s(.*)',"abcd")>>>tmp<re.Matchobject;span=(0,5),match='abcd'>>>>tmp.group(1)'ab'>>>tmp.group......
  • delphi 初识内存流: 从设置用户头像到从数据库存取图片到的过程
    所谓"流",就是一段数据或是一块内存;在进行流操作时,我们不必关心流中的数据到底是什么;只需要知道流的大小和当前的指针位置.所以流只有两个属性: Size、Position.对流的操作,不过就是读取和写入.所以流最主要的方法就是Read和Write.在很多控件的使用中,读取主要用Lo......
  • delphi cannot make a visible window modal报错的解决过程
    抛出问题: 排除过程:1.在TFrmChangePW窗口的create事件里打断点,结果发现,根本没停顿,所以判断问题不在TFrmChangePW窗体里,而是showmodal这语句里出了问题,点中断,跳到抛出错误的地方:2.if里的四个条件,检查了第一个,第二个和第四个都是没问题的,第三个(fsModalinFFormS......