字符串切割(100)

  • 主题发起人 主题发起人 lingmao3
  • 开始时间 开始时间
L

lingmao3

Unregistered / Unconfirmed
GUEST, unregistred user!
张三 40 -45李四 60-70 王五 70-80求编程变成张三 40 -45李四 60-70 王五 70-80谢谢各位大虾们支抢救支持!
 
显然是按汉字和数字分割的Byte(Str[i+1])>128 //下面一个字符是汉字或者 本身已经是汉字了 Str[i+1] in ['0', '9'] //下面一个字符是数字
 
同意 smlabc 的说法。剩下就是实现这个算法的问题。费的时间处理没什么问题的。
 
查找,取子串
 
var tmpStr: string; iCount: integer; b:boolean;begin b := false; iCount := 1; tmpStr := trim(edit1.Text); while length(tmpStr) >0 do begin if (ord(tmpStr[iCount])> 128)and b then begin memo1.Lines.Add(copy(tmpStr,1,icount)) ; tmpStr := Copy(tmpStr,iCount,length(tmpStr)-icount+1); iCount := 1; b := false; end; if (iCOunt=length(tmpStr)) then begin memo1.Lines.Add(copy(tmpStr,1,icount)) ; break; end; if (ord(tmpStr[iCount])<128) and(ord(tmpStr[iCount+1])>128) then b := true; inc(iCount); end;
 
接受答案了.
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部