gpt4 book ai didi

delphi - 如何在某个字符处拆分字符串?

转载 作者:行者123 更新时间:2023-12-03 18:28:54 24 4
gpt4 key购买 nike

如何将一行文本(例如 Hello there*3 )拆分为一个数组? * 之前的所有内容需要添加到第一个元素和 * 之后的所有内容需要添加到第二个。我确信这是可能的。我需要稍后再记忆一下,第一项和第二项必须相互关联

我正在使用德尔福 7。

最佳答案

type
TStringPair = array[0..1] of string;

function SplitStrAtAmpersand(const Str: string): TStringPair;
var
p: integer;
begin
p := Pos('&', Str);
if p = 0 then
p := MaxInt - 1;
result[0] := Copy(Str, 1, p - 1);
result[1] := Copy(Str, p + 1);
end;

或者,如果你不喜欢魔法,
function SplitStrAtAmpersand(const Str: string): TStringPair;
var
p: integer;
begin
p := Pos('&', Str);
if p > 0 then
begin
result[0] := Copy(Str, 1, p - 1);
result[1] := Copy(Str, p + 1);
end
else
begin
result[0] := Str;
result[1] := '';
end;
end;

如果您出于某种完全奇怪且有点奇怪的原因需要一个过程而不是一个函数,那么请执行
procedure SplitStrAtAmpersand(const Str: string; out StringPair: TStringPair);
var
p: integer;
begin
p := Pos('&', Str);
if p > 0 then
begin
StringPair[0] := Copy(Str, 1, p - 1);
StringPair[1] := Copy(Str, p + 1);
end
else
begin
StringPair[0] := Str;
StringPair[1] := '';
end;
end;

关于delphi - 如何在某个字符处拆分字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7491036/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com