delphi怎么获取字符串之间多个字符内容?

 我来答
情场不打烊
优质答主

推荐于2019-09-03 · 专注职场八卦,爱好吃瓜。
情场不打烊
采纳数:39 获赞数:6341

向TA提问 私信TA
展开全部

delphi 如何循环获取网页源码中两个字符串之间的内容,并写入数组
function GetStr(Str,StrBegin,StrEnd,strxunhuan:string;Isxunhuan :Boolean = false):string;
str  全部文本
StrBegin   :开始文本
StrEnd    :结束文本
返回    :开始文本和结束文本之间的文本内容
isxunhuan(数组)     :  false(默认)的话不循环获取,true的话循环获取 (可不输入)

这类任务建议使用正则表达式来完成。

type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Memo1: TMemo;
Memo2: TMemo;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure StrSplite(AStr,ASBegin,ASEnd:string;AStrings:TStrings;AIsXunHun:Boolean=True);
var
iB,iE:Integer;
s:string;
begin
iB:=Pos(ASBegin,AStr);
if iB>0 then
begin
iE:=Pos(ASEnd,AStr);
if iE>0 then
begin
iB:=iB+length(ASBegin);
s:=Copy(AStr,iB,iE-iB);
AStrings.Add(s);
if AIsXunHun then
begin
AStr:=Copy(AStr,iE+length(ASEnd),length(AStr));
StrSplite(AStr,ASBegin,ASEnd,AStrings,AIsXunHun);
end;
end;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Memo2.Clear;
StrSplite(Memo1.Text,edit1.Text,edit2.Text,Memo2.Lines,True);
end;

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式