检查字符串是否包含特定单词C#

时间:2014-08-04 01:38:00

标签: c# regex string

我正在检查这些字符串,看它们是否包含单词“hi”,如果有,则返回true。否则我会回复假。字符串“high up应返回false但返回true。我该如何解决这个问题?

    public static bool StartHi(string str)
    {            
        if (Regex.IsMatch(str, "hi"))
        {
            return true;
        }
        else
            return false;
    }

    static void Main(string[] args)
    {
        StartHi("hi there");    // -> true
        StartHi("hi");          // -> true
        StartHi("high up");     // -> false (returns true when i run)
    }

2 个答案:

答案 0 :(得分:14)

尝试指定word boundaries\b):

if(Regex.IsMatch(str, @"\bhi\b"))

答案 1 :(得分:3)

private static bool CheckIfExists(string sourceText, string textToCheck)
    {
        return sourceText.Split(' ').Contains(textToCheck);
    }