如果我的字符串为:1/2/3/4/5/那么,如何操作才能让我分别取得1,2,3,4,5呢?当然,字符串不一定是1/2/3/4/5/这样的,也可能是:133/gfe/far343/fere/等等这样有类似规律的。(字符/字符/)这样。
解决方案 »
- 引段ASP正则如何改成DELPHI的?
- 如何将一个ansi的文本文件转为unicode格式
- 怎样接收从键盘口送进来的数据?
- 怎样在memo或者richedit中实现一个文件中多种颜色或字体显示 ,请举个例子
- 如何使用hook,或者其他方法得到对方程序中文本框的内容。--100fen
- 求助!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- 放到技术版块问一个感情问题:请了解女孩子心理的朋友进来帮我一个忙好吗?当然如果你是MM更好。
- 陈盈豪是谁??
- 用dbgrideh制作复杂表头
- 怎样获取应用程序的版本号?
- 运行一段时间后出现“存储空间不足”等信息
- 计算上网时间和上网流量,最好有源代码!!高分相送了啊,问题解决马上给分!!
//参数str:原始字符串
//参数delimiter:分隔符
//返回值:数组
function Split(const str: string; const delimiter: string = ','): Variant;
var
strTemp: string;
p: Integer;
Value: array of string;
begin
strTemp := str;
if Copy(strTemp, Length(strTemp), 1) <> delimiter then
strTemp := strTemp + delimiter;
p := Pos(delimiter, strTemp);
while p > 0 do
begin
setlength(Value, Length(Value) + 1);
Value[High(Value)] := Copy(strTemp, 1, p-1);
strTemp := Copy(strTemp, p + 1, Length(strTemp) - p); p := Pos(delimiter, strTemp);
end;
Result := Value;
end;
i:Integer;tls:=TStringList.Create;
try
tls.Text:=StringReplace('ab/wer/354/sdf','/',#13#10,[rfReplaceAll]);
for i:=0 to tls.Count-1 do
begin
ShowMessage(tls.String[i]);
end;
finally
tls.Free;
end;
var
sl: TStringList;
str: string;
i: integer;
begin
str := '1/2/3/4/5/';
sl := TStringList.Create;
ExtractStrings(['/'], [], PChar(str), sl);
for i:=0 to sl.Count-1 do
ShowMessage(sl[i]);
FreeAndNil(sl);
end;
这个方法最简单