gpt4 book ai didi

delphi - 当字符串以非数字字符和前导零开头时,如何将字符串转换为整数?

转载 作者:行者123 更新时间:2023-12-03 18:01:10 27 4
gpt4 key购买 nike

我有一些在运行时动态创建的字符串。

这些值按以下划线、前导零和序列号的顺序生成。格式如下所示:

_00001  
_00002
_00003
_00004

_00098
_00099
_00100
_00101

我想将数字部分提取为整数,忽略下划线和前导零。

StringReplace 可以轻松去除下划线部分,但是我不知道数值是多少,如何提取数字部分呢?

此类函数如何工作的一些示例输出:

_00003 = 3
_00098 = 98
_00482 = 482
_07218 = 7218
_14005 = 14005
_37585 = 37585
_69732 = 69732

StringReplacePos 是我的想法,但我并不总是确定如何充分利用 Pos,而 StringReplace 方法可能很困惑。

我想我需要做的就是检查第一个不是 0 的数字,但也许我又把自己弄糊涂了,所以真的欢迎任何指点。

最佳答案

你应该使用

StrToInt(Copy(S, 2))

确实,Copy(S, 2) 返回 S 的所有字符,第一个字符除外,因此您将得到 0000300098, 00482 等。您可以使用 StrToInt 轻松地将这些转换为相应的整数。

关于delphi - 当字符串以非数字字符和前导零开头时,如何将字符串转换为整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19010613/

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