.Net Regex与其他工具不匹配

时间:2012-06-21 20:16:51

标签: c# regex match

我正在尝试匹配以 ./ media

开头的字符串

我有以下正则表达式:

bool match = Regex.IsMatch(@"^\./media", imgSourcePath);

我的源字符串如下所示: ./media / somefile.png

当我在其他tools中测试此表达式时,它按预期工作。但是,在C#源实现中永远找不到匹配项。有人可以告诉我为什么吗?

谢谢!

2 个答案:

答案 0 :(得分:2)

您的参数似乎是倒退的:Regex.IsMatch(String input, String pattern)。试试这个:

var m = Regex.IsMatch("./media", "(./media)(.*?)", RegexOptions.IgnoreCase | 
    RegexOptions.Singleline);
MessageBox.Show(m.ToString());  //displays true

答案 1 :(得分:1)

http://msdn.microsoft.com/en-us/library/sdx2bds0.aspx#Y30

您有输入和模式向后。您要搜索匹配项的字符串应该是第一个参数,要使用的模式应该是第二个参数。