首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用indexof和substring从字符串中提取数字并生成数字的List<int>?

使用indexof和substring从字符串中提取数字并生成数字的List<int>,可以按照以下步骤进行:

  1. 首先,定义一个空的List<int>,用于存储提取出的数字。
  2. 使用indexof方法找到字符串中第一个数字的索引位置。可以通过循环遍历字符串的每个字符,直到找到第一个数字的位置。
  3. 一旦找到第一个数字的索引位置,可以使用substring方法从该位置开始提取数字。可以通过循环遍历字符串的每个字符,直到遇到非数字字符为止,将提取到的数字字符串存储起来。
  4. 将提取到的数字字符串转换为整数,并将其添加到List<int>中。
  5. 继续循环遍历字符串,重复步骤2到步骤4,直到字符串中的所有数字都被提取并添加到List<int>中。
  6. 最后,返回生成的List<int>。

以下是一个示例代码,使用C#语言实现上述步骤:

代码语言:txt
复制
string inputString = "abc123def456ghi789";
List<int> numbersList = new List<int>();

int startIndex = 0;
while (startIndex < inputString.Length)
{
    int digitIndex = inputString.IndexOfAny("0123456789".ToCharArray(), startIndex);
    if (digitIndex == -1)
    {
        break;
    }

    int endIndex = digitIndex;
    while (endIndex < inputString.Length && Char.IsDigit(inputString[endIndex]))
    {
        endIndex++;
    }

    string numberString = inputString.Substring(digitIndex, endIndex - digitIndex);
    int number;
    if (int.TryParse(numberString, out number))
    {
        numbersList.Add(number);
    }

    startIndex = endIndex;
}

// 输出提取到的数字列表
foreach (int number in numbersList)
{
    Console.WriteLine(number);
}

这段代码将从字符串"abc123def456ghi789"中提取出数字123、456和789,并将它们存储在List<int>中。你可以根据实际需求修改输入字符串和输出方式。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券