如何在特定字符串中查找一个或多个数字

时间:2014-07-03 07:05:12

标签: c# regex string

我需要在特定的字符串集中找到一个或多个数字。 我的字符串必须是这种类型:

  1. 首先来intuint。我需要知道它是u还是没有。
  2. 秒始终为integer个数字
  3. 其余是可选的: 一个。可能会来#34; p"或" d" 湾如果有" p"或" d"然后会有第二个数字。
  4. 的示例:

    "uint16","int32","uint12p2","int32p1","int14d100","uint13d1000"
    

    我需要提取所有数字(一个或两个)和一个boolean,说是否有你作为第一个charachter。

    我试图用regexp来做这件事。我以前从没用过它。

    有没有很好的参考资料来了解rregex?

    感谢。

1 个答案:

答案 0 :(得分:-1)

您对Regex的最佳参考可能是www.regular-expressions.info

根据我的理解,您希望从字符串中获取数字并确定这些数字是uint还是int,请参阅此伪代码:

private void f(string str)
{
    // True if the string contains 'u'
    bool u = false;
    string numbersout:
    string numbers = "1234567890";
    if (str[0] == 'u') bool = true;
    for (int i = 1; i < str.Length(); i++)
        for (int j = 0; j < numbers.Length(); j++)
            if (str[i] == numbers[j]) numbersout += str[i];
}

这应该有效。它会检查字符串中的每个数字是否有数字,然后将其添加到另一个字符串中。如果它是一个uint,那么bool“u”也会设置为true。