如何在C#中使用通配符模式进行字符串比较

时间:2010-08-01 04:57:42

标签: c# asp.net

C#是否提供了将字符串与a进行比较的任何方法 像通配符模式。或者我可以说我想找一个“Like Operator”来进行字符串比较。 假设我有一个字符串。我也有一个段落,我想在这个parapgraph上找到字符串,但是怎么做。在SQL中我们可以只使用 LIKE 运算符。

任何建议和回复都表示感谢。

3 个答案:

答案 0 :(得分:12)

通配符是一种复杂的野兽(正则表达式的一种形式),但听起来你想要Contains方法。你可以paragraph.Contains(sentence)

答案 1 :(得分:6)

String有一个Contains方法就足够了,返回boolean

"Big string that represents a paragraph".Contains("that");

Contains Method MSDN page的示例:

// This example demonstrates the String.Contains() method
using System;

class Sample 
{
    public static void Main() 
    {
    string s1 = "The quick brown fox jumps over the lazy dog";
    string s2 = "fox";
    bool b;
    b = s1.Contains(s2);
    Console.WriteLine("Is the string, s2, in the string, s1?: {0}", b);
    }
}
/*
This example produces the following results:

Is the string, s2, in the string, s1?: True
*/

如果你需要更高级的匹配,那么正则表达式可能是正确的路线,但是从你说的我认为包含的例子中可以正常工作。

答案 2 :(得分:5)

您可以使用Regex定义通配符。这些不像DOS那样完全有效,但功能更强大。 参见:

http://msdn.microsoft.com/en-us/library/ms228595(VS.80).aspx