for i:=Length(s) downto 1 do
if s[i]='-' then
Delete(...);
if s[i]='-' then
Delete(...);
解决方案 »
- 我的delphi何去何从
- 请各位帮忙!
- 如何编程用WINDOWS的计划任务定时让我的程序运行??
- 关于ADOTable小的问题。在线...................:)
- 在线等待,马上结分:求一个字符串函数
- 如何判断ياسيوفن只是ياسيوف的后面加了一个字母ن
- 说说ADO几个主要组件的作用?
- 关于gvbasic的问题,谢谢。
- 关于库存核算方面的问题:大家核算库存成本都用的哪些算法?
- 请问各位:当用table,query1.datasource连接SQL数据库时,每次运行前都有一个数据库登陆窗口,请问如何去掉这个提示窗口?
- 300分请教图像打印问题!
- 打倒nt… 诸位大虾,救救我,重分求救
StrPos(const Str1, Str2: PChar): PChar; 定位
Edit1.Text := FilterSpecialString('abcdef','c'); //Edit1.Text='abdef';
Edit1.Text := FilterSpecialString('abcdef','cd'); //Edit1.Text='abef';
Function TForm1.FilterSpecialString(OriginString, SpecialString: String): String;
Var
i,j : Integer;
FromSit,ToSit : Integer; //源字符串的位置
ResultString : String; //返回结果字符串
OriginStrLength, SpecialStrLength : Integer; //源字符串和特殊字符串的长度
begin
Result := '';
If (SpecialString = '') Or (Length(SpecialString) > Length(OriginString)) Then
begin
Result := OriginString;
Exit;
End;
ResultString := '';
j := 1;
i := 1;
FromSit := 1;
OriginStrLength := Length(OriginString);
SpecialStrLength := Length(SpecialString);
While(i <= OriginStrLength) Do
Begin
If OriginString[i] = SpecialString[j] Then
Begin
If j = SpecialStrLength Then
Begin
ToSit := i;
ResultString := ResultString + Copy(OriginString,FromSit,ToSit - SpecialStrLength - FromSit + 1);
FromSit := i + 1;
j := 1;
End
Else
j := j + 1;
End
Else
Begin
If j <> 1 Then i := i - j + 1;
j := 1;
End;
i := i + 1;
End;
ResultString := ResultString + Copy(OriginString,FromSit,OriginStrLength - FromSit + 1);
Result := ResultString;
end;