检查字符串是否包含数字c#

时间:2014-12-09 13:59:01

标签: c# string substring contains

我知道那里有很多这样的问题。 但我真的找不到能解决问题的任何东西。

我想检查字符串是否包含特定的输入数字。请参阅以下示例:

public Boolean checkString()
{
    string input = "2.5.8.12.30";
    string intToFind = "3";

    if (input.contains(intToFind))
    {
        return true;
    }
    else
    {
        return false;
    }
}

这返回true但我希望它返回false,因为intToFind字符串是3而不是30.所以它是contains()就是问题。

如何让它仅搜索3?

5 个答案:

答案 0 :(得分:13)

您可以使用String.Split + Contains

bool contains3 = input.Split('.').Contains("3");

答案 1 :(得分:7)

bool anyThree = input.Split('.').Any(str => str == "3");

答案 2 :(得分:2)

您可以使用String.Split('.')将输入拆分为数组。现在使用Array.contains检查元素是否在数组

bool contained = input.Split('.').Contains("3");

答案 3 :(得分:0)

string[] words = input.Split('.');
if (words.contains("3")){do something...}

答案 4 :(得分:0)

您也可以使用可能有点矫枉过正的正则表达式。

string str = "2.5.8.12.30";
string strToFind = "3";
bool contains = Regex.Match(str, string.Format(@"\W{0}\W",strToFind)).Success;