Delphi 获取两字符串之间的内容
如何在Delphi中获取两字符串之间的内容如定义如下函数functionGetStringBetween(constFullStr,StrLeft,StrRight:St...
如何在Delphi中获取两字符串之间的内容
如定义如下函数
function GetStringBetween(const FullStr, StrLeft, StrRight: String): string;
调用如下:
strtmp:=GetStringBetween('123456789','123','89');
结果strtmp='4567'
请问GetStringBetween这个函数怎么写? 展开
如定义如下函数
function GetStringBetween(const FullStr, StrLeft, StrRight: String): string;
调用如下:
strtmp:=GetStringBetween('123456789','123','89');
结果strtmp='4567'
请问GetStringBetween这个函数怎么写? 展开
2个回答
2013-08-04
展开全部
用正则表达式,快捷高效。
uses TRegExpEx;(自己找,万一的Delphi博客上有介绍)
然后按照这个模式构造正则表达式:
/123(.*)89/
把Subject设为123456789,然后Match,在Matches[1]里面就是结果
//显示找到的第一个var reg: TPerlRegEx;begin reg := TPerlRegEx.Create(nil); reg.Subject := 'CodeGear Delphi 2007 for Win32'; reg.RegEx := '\d'; if reg.Match then ShowMessage(reg.MatchedExpression) //2 else ShowMessage('没找到'); FreeAndNil(reg);end;
uses TRegExpEx;(自己找,万一的Delphi博客上有介绍)
然后按照这个模式构造正则表达式:
/123(.*)89/
把Subject设为123456789,然后Match,在Matches[1]里面就是结果
//显示找到的第一个var reg: TPerlRegEx;begin reg := TPerlRegEx.Create(nil); reg.Subject := 'CodeGear Delphi 2007 for Win32'; reg.RegEx := '\d'; if reg.Match then ShowMessage(reg.MatchedExpression) //2 else ShowMessage('没找到'); FreeAndNil(reg);end;
2013-08-04
展开全部
function GetStringBetween(const FullStr, StrLeft, StrRight: String): string;
var
i,n:integer;
begin
i:=pos(StrLeft,FullStr)+length(StrLeft);
n:=pos(StrRight,FullStr)-length(StrLeft)-1;
Result:=copy(FullStr,i,n);
end;
var
i,n:integer;
begin
i:=pos(StrLeft,FullStr)+length(StrLeft);
n:=pos(StrRight,FullStr)-length(StrLeft)-1;
Result:=copy(FullStr,i,n);
end;
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询