Delphi分析字符串文字

iamhejianke 2011-03-26 11:00:18
有一字符串
var person={23:["姓名1","性别1","年龄1"],25:["姓名2 ","性别2 ","年龄2"]};

如何用Delphi分析出ID为23/25的姓名、性别、年龄。
...全文
119 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Frank.WU 2011-04-01
  • 打赏
  • 举报
回复
json一句话的事情
Q724481678Q 2011-03-26
  • 打赏
  • 举报
回复
按照数据格式分别获取就可以了,耐心点分析,不难
taste品味 2011-03-26
  • 打赏
  • 举报
回复
function GetMiddleStr(const AStr :string; ALen :Integer):string;//去掉产尾相关标识符,如{123}则去掉{},如"123"则去掉""
begin
Result := '';
if AStr <> '' then
Result := Copy(AStr, ALen+1, Length(AStr)- ALen *2);
end;

procedure GetStr();
var
LIndex :Integer;
LStr1, LStr2 :string;
LStrList :TStrings;
begin
LStrList := TStringList.Create;
LStr1:='{23:["张三","男","20"],25:["王春芬","女","25"]}' ;
LStr1 := GetMiddleStr(LStr1, 1);
LIndex := Pos(']', LStr1);
while LIndex > 0 do
begin
LStr2 := Copy(LStr1, 1, LIndex);
LStr1 := Copy(LStr1, LIndex+2, Length(LStr1) - LIndex -1 );
Form1.Memo1.lines.Add(LStr2);
Form1.Memo1.lines.Add(LStr1);
LIndex := Pos(']', LStr1);
end;
end;

思路先分析串,分解为
23:["张三","男","20"]
25:["王春芬","女","25"]

接着再分析吧
iamhejianke 2011-03-26
  • 打赏
  • 举报
回复
谢谢,研究下
不得闲 2011-03-26
  • 打赏
  • 举报
回复
这个很显然的是一个Json的数据结构,可以去下载一个Json的解析库
或者用正则表达式咯!
iamhejianke 2011-03-26
  • 打赏
  • 举报
回复
不是呀,是用Delphi分析字符串,有什么算法?
hongss 2011-03-26
  • 打赏
  • 举报
回复
你这不是Delphi的吧

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧