请教截取字符串的问题

chdaner 2009-12-30 01:31:47
有十六进制:00004E20

怎么做能截取0 之后的值,即4e20

以上只是个例子,开头 0的个数不固定,
...全文
150 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
kingswonder 2010-01-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 mwy654321 的回复:]
function fmt(const s:string):string;
var i:integer;
begin
  for i:=1 to length(s) do
    if s[i] <>'0' then break;
  result:=copy(s,i,length(s)-i+1);
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
showmessage(fmt('0000000000004E20'));
end;
[/Quote]

正解,因其为问题解决之正途,应用之广泛性,
可以举一反三,推广到其它字符串操作。
haochin 2010-01-02
  • 打赏
  • 举报
回复
吵清楚了没有?
我在等正确答案呢。
lyhoo163 2010-01-02
  • 打赏
  • 举报
回复
up
wooden954 2009-12-31
  • 打赏
  • 举报
回复
还有,如果你只是需要取它的真实数值,那么你完全可以不必截取,直接转换为整型就可以了。
如4楼和6楼的方法。
wooden954 2009-12-31
  • 打赏
  • 举报
回复
既然开头的0的个数不确定,那么你取的数据从末尾算,是不是固定长度的呢?如果是的话,那么从末尾截取不就行了?
无条件为你 2009-12-31
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 qq286251099 的回复:]
4楼 是来打击  mwy654321 的
哈哈
[/Quote]

他打击我什么?他的方法并不行,除非再用format格式后输出16进制。

你试下就知道区别了。别瞎说。
suuuu 2009-12-31
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 mwy654321 的回复:]
function fmt(const s:string):string;
var i:integer;
begin
  for i:=1 to length(s) do
    if s[i] <>'0' then break;
  result:=copy(s,i,length(s)-i+1);
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
showmessage(fmt('0000000000004E20'));
end;
[/Quote]
up~
ffwin 2009-12-30
  • 打赏
  • 举报
回复
procedure TForm1.Button1Click(Sender: TObject);
var str:string;
begin
str := '$'+'00004E20';
ShowMessage(IntToHex(StrToIntdef(str,0),2));
end;
QQ286251099 2009-12-30
  • 打赏
  • 举报
回复
4楼 是来打击 mwy654321 的
哈哈
dd_zhouqian 2009-12-30
  • 打赏
  • 举报
回复
procedure TForm1.Button1Click(Sender: TObject);
var str:string;
begin
str := '$'+'00004E20';
ShowMessage(IntToStr(StrToIntdef(str,0)));
end;
hjkto 2009-12-30
  • 打赏
  • 举报
回复
学习
无条件为你 2009-12-30
  • 打赏
  • 举报
回复
function fmt(const s:string):string;
var i:integer;
begin
for i:=1 to length(s) do
if s[i]<>'0' then break;
result:=copy(s,i,length(s)-i+1);
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
showmessage(fmt('0000000000004E20'));
end;
lhy 2009-12-30
  • 打赏
  • 举报
回复
循环如果是零就继续

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧