0

./mediaで始まる文字列に一致させようとしています

次の正規表現があります。

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

私のソース文字列は次のようになります: ./ media / somefile.png

この式を他のツールでテストすると、期待どおりに機能します。ただし、C#ソースの実装で一致するものが見つかることはありません。誰かが理由を教えてもらえますか?

ありがとう!

4

2 に答える 2

2

パラメータが逆になっているようです: Regex.IsMatch(String input, String pattern)。これを試して:

var m = Regex.IsMatch("./media", "(./media)(.*?)", RegexOptions.IgnoreCase | 
    RegexOptions.Singleline);
MessageBox.Show(m.ToString());  //displays true
于 2012-06-21T20:24:18.170 に答える
1

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

入力とパターンが逆になっています。一致を検索する文字列を最初のパラメーターにし、使用するパターンを 2 番目のパラメーターにする必要があります。

于 2012-06-21T20:30:18.957 に答える