在一长段字符串中,如何取得2个特定字符串中的字符串比如:99999999Hello123123Bye,我想做一个函数,取得'Hello'和'Bye'之间的字符串'123123',能给点示例代码吗?谢谢。祝圣诞快乐!
解决方案 »
- 请问一下,如何实现数据库的备份和还原
- Re:不同分辨率下的程序设计问题
- 怎么F12键就是不能做虚拟键呢?
- ------clientsocket同时向服务器发送多条查询信息,如何实现?-------------
- 我新安装了DEPHI 7, 怎么没有了 quickReport ,我以前做的报表看不到了
- ★DBGrid的bug,请高手救命!★
- 菜鸟问题,请高手指导....在线!
- 散分
- 请问如何在quickrep报表里,计算打印页的总数,然后填在QRlabel中?
- 谁有支持Delphi6的Rxlib的控件呀?
- Delete(var S: string; Index, Count:Integer);这个过程为什么有时候就不能用,提示"No Parameters expected"
- 怎么防止程序被重复执行
s := '99999999Hello123123Bye';
s := Copy(s,14,19);
Showmessage(s);
LeftStr
RightStr
Length
这四个函函数可以很方便的取
s : string;//想取出其中的‘222’字符串i:=pos('AIS','111AIS222EFG');
j:=pos('EFG','111AIS222EFG');
s:=copy(s,i,j);
showmessage(s);为什么 s 为空?
var
lBegin,lCount : integer;
lSubString : String;
begin
if aString='' then exit;
lBegin := Pos(aFromStr,aString)+Length(aFromStr);
if aFromStr='' then lBegin := 1;
lCount := Pos(aToStr,aString)-lBegin;
if lCount <1 then lCount := length(aString)- lBegin+1;
lSubString := Copy(aString,lBegin,lCount);
result := lSubString;
end;
var
i:integer;
s:string;
begin
S:='99999999Hello123123Bye';
i:=Pos('1',S);
S:=MidStr(S,i,6);
showmessage(S);
end;
s : string;//想取出其中的‘222’字符串i:=pos('AIS','111AIS222EFG');
j:=pos('EFG','111AIS222EFG');
s:=copy(s,i,j);
showmessage(s);应改为:var i,j : integer;
s : string;//想取出其中的‘222’字符串i:=pos('AIS','111AIS222EFG');
j:=pos('EFG','111AIS222EFG');
s:=copy(s,i,j-i);
showmessage(s);
GetSubString(aString,aFromStr,aToStr:String):String;有些问题
aString='111AISG'
AFromStr='AIS'
aToStr='ISG'
结果是G,应该的结果''
对aFromStr,aToStr重合或挨着的情况需要注意
---------
aString='111AIS222fgG'
AFromStr='fgG'
aToStr='AIS'
结果是'',应该是222
对aFromStr在atoStr后面也要考虑
-----------------
对atoStr=''要考虑
-------
TO:cqpipilu(皮皮鲁)
你的s没有赋值