一个PChar类型的string,一个Pchar类型的分隔符,最后希望得到字符串中
两个分隔符之间的子串,返回PChar,请问该怎么做,请提供源码救命啊!!
例如('www.csdn.com')我想取到'csdn'子串。
function getstr(source:Pchar;achar:Pcahr;i:integer):Pchar;(i := 2)
两个分隔符之间的子串,返回PChar,请问该怎么做,请提供源码救命啊!!
例如('www.csdn.com')我想取到'csdn'子串。
function getstr(source:Pchar;achar:Pcahr;i:integer):Pchar;(i := 2)
解决方案 »
- delphi7中insert into插入数据库中的中文显示问号
- 关于使用ADOquery1出现的问题?
- delphi6与delphi7差别的问题?
- delphi程序可以运行,任务管理器中可以看到,但在任务栏中不显示也不生成exe.这是怎么回事啊?
- tdbchart控件横坐标问题
- 简单问题,急!
- 下面的代码是什么意思一个菜鸟的简单问题
- 怎样用delphi5打开delphi6的dfm文件?(没有delphi5没有的控件)
- 我作了一个.chm的帮助文件,但用下面方法却无法调用?
- 开始运行时怎样使子窗体不显示?怎样关闭子窗体?
- 关于一个数据库多个客户端的的大问题?
- 快来抢分,一个很菜的问题,关于PopupMenu1 右健的??
i:integer;
tmp:pchar;
begin
i:=pos(achar,source);
tmp:=copy(source,i+1,Length(source)-i);
i:=pos(achar,tmp);
result:=copy(tmp,1,i);
end;
COPY来取得所要的字符
length_1=pos('www.csdn.com','.')
然后ss=copy('www.csdn.com',length_1,length_0)='csdn.com'
在length_2=pos(ss,'.')=5
sss=copy(ss,1,length_2)='csdn'
var
tmpstr:string;
ch:string;
begin
tmpstr:=strpas(source);
ch:=strpas(aChar);
delete(tmpstr,1,pos(ch,tmpstr));
delete(tmpstr,pos(ch,tmpstr),length(tmpstr)-pos(ch,tmpstr)+1);
result:=PCHAR(tmpstr);
end;
挺乱,你自己看看是不是会有帮助
procedure TForm1.Button1Click(Sender: TObject);
var
i,j,m,n:integer;
s1,s,s2,s3,s4,s5:string;
begin
m:=0;
s1:='.';
s:='www.csdn.net';
form1.Edit2.Text:=s;
i:=length(s);
for j:=0 to i-1 do
begin
s2:=s[j];
if s[j]=s1 then
begin
s3:=s3+inttostr(j);
m:=m+1;
end;
end;
showmessage(s3);
showmessage(inttostr(m));
form1.Edit1.Text:=s3;
form1.Edit1.SelStart:=0;
form1.Edit1.SelLength:=1;
s4:=form1.Edit1.SelText;
form1.Edit1.SelStart:=1;
form1.Edit1.SelLength:=1;
s5:=form1.Edit1.SelText;
showmessage(s4);
showmessage(s5);
form1.Edit2.SelStart:=strtoint(s4);
form1.Edit2.SelLength:=strtoint(s5)-strtoint(s4)-1;
form1.Edit2.Text:=form1.Edit2.SelText;
end;
是否可以apchar := astring?这样进行赋值啊?