Delphi字符串截取的问题2
发布网友
发布时间:2024-01-19 06:19
我来回答
共6个回答
热心网友
时间:2024-02-10 07:39
uses StrUtils;
const
cnsStart = '[';
cnsEnd = ']';
var
s: string;
iStart, iLen: Integer;
begin
s := '中国哈哈ABC[中国哈哈ABCD]';
iStart := StrUtils.PosEx(cnsStart, s) + 1; //起始位置
iLen := PosEx(cnsEnd, s, iStart) - iStart; //复制长度
ShowMessage(Copy(s, iStart, iLen));
end;
热心网友
时间:2024-02-10 07:39
delphi的字符截取函数LeftStr, MidStr, RightStr
这几个函数都包含在StrUtils中,所以需要uses StrUtils;
假设字符串是 Dstr := ’Delphi is the BEST’, 那么
LeftStr(Dstr, 5) := ’Delph’
MidStr(Dstr, 6, 7) := ’i is th’
RightStr(Dstr, 6) := ’e BEST’
我不知道中文算几位,至于这个你自己去试了,总之是用MidStr()这个方法了
热心网友
时间:2024-02-10 07:40
用 Pos 和 Copy 两个函数 就可以了
热心网友
时间:2024-02-10 07:40
procere TForm1.Button1Click(Sender: TObject);
const
str: string = '中国哈哈ABC[中国哈哈ABCD]';
var
substr: string; //截取的字符串
begin
substr := copy(str, 0, 11);
ShowMessage(substr);
end;运行截图提醒一下, 中文属于unicode字符,占两位
热心网友
时间:2024-02-10 07:41
S:=copy(str,0,Pos('[',str)-1);这个也行
热心网友
时间:2024-02-10 07:42
S:=LeftStr(str,Pos('[',str));