怎样把string中所有的“/”替换为“/"?(50分)

  • 主题发起人 主题发起人 hlsoft
  • 开始时间 开始时间
H

hlsoft

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样把string中所有的“/”替换为“/"?
 
stringreplace函数
 
function StringReplace(const S, OldPattern, NewPattern: string;
Flags: TReplaceFlags): string;

自己循环实现
 
呵呵,不用循环,设定Flags为replaceall就行了
 
str:='dfdsafd//dfdsfd///';
for i:=0 to length(str)-1 do
if str='/' then
str:='/';
 
akju正确,eyes4,在不知道有StringReplace函数之前我也是用这种方法,但后来发现delphi已提供这种功能的函数了。
 
我并不反对用stringReplace;
我也知道StringReplace这个函数,贴一段程序只是提供一种思路而已.
说老实话,老用现成的未必有助于编程水平的提高。
 
呵呵同意楼上所说。
用COPY函数呢,也能实现吧,不过这得自己编程动脑子了。
 
eyes4果然是有经验的人,佩服!
 
用copy要好些,可以实现多字符替换多字符:
function replace(OldStr,NewStr,str:string):string;
var
i:integer;
begin
while str<>'' do
begin
i:=Pos(oldstr, Str);
if i=0 then
begin
Result:=Result+str;
Break;
end;
Result:=Result+Copy(Str,1,i-1)+NewStr;
Str:=Copy(Str,i+Length(Oldstr),length(str));
end;
end;
 
S 是含有‘/’的字符串, D是替换后的结果。
D := StringReplace(S,‘/’, ‘/’, [replaceall]);
 
接受答案了.
 
后退
顶部