如何写这么一个功能函数? |
缺席
|
sl@cableplus.com.cn
高階會員 發表:168 回覆:359 積分:130 註冊:2004-03-26 發送簡訊給我 |
|
Zard
尊榮會員 發表:24 回覆:396 積分:539 註冊:2003-11-26 發送簡訊給我 |
引言: 这个函数可以传4个值进去 第一个是定义一个STRING变量 第二个是定义我要在第一个变量中匹配的值,也就是说我如果第二个值传进去‘IN’或‘ABCD’,则要在第一个STRING变量中找‘IN’或‘ABCD’ 如果我在第一个变量中找到很多‘IN’或‘ABCD’,第三个参数是让我指定第几个’IN‘或‘ABCD’ 第四个是我要在前面指定的IN后插入我需要的字符或变量,请教这个函数应该怎么做? // szOrg: 原始字串 // szSub: 要找尋的字串 // iPos: 要插入找到的第幾個結果, iPos至少要為1 // szInsert: 要插入的新字串 Function InsertStr(szOrg: String; szSub: String; iPos: Integer; szInsert: String): String; var slTmp: TStringList; i: Integer; begin Result := szOrg; if iPos < 1 then Exit; slTmp := TStringList.Create; try szOrg := ' ' szOrg ' '; slTmp.Text := StringReplace(szOrg, szSub, #13, [rfReplaceAll]); if (slTmp.Count > 1) and (iPos < slTmp.Count) then begin Result := ''; for i := 0 to slTmp.Count - 2 do begin Result := Result slTmp.Strings[i] szSub; if i = (iPos - 1) then Result := Result szInsert; end; Result := Result slTmp.Strings[slTmp.Count - 1]; Result := Trim(Result); end; finally slTmp.Free; end; end; procedure TForm1.Button1Click(Sender: TObject); begin ShowMessage(InsertStr('INABINEFG HIJKLIN BBCINdtjrklsdIN', 'IN', 2, '@@')); end; |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |