1

次の正規表現を使用しようとすると問題が発生します。

string profileConfig = File.ReadAllText(str);

string startIndex = "user_pref(\"network.proxy.autoconfig_url\", \"";
string endIndex = "\"";

var regex = startIndex + "(.*)" + endIndex;
// Here we call Regex.Match.
Match match = Regex.Match(profileConfig, 
                          regex,
                          RegexOptions.IgnoreCase);

// Here we check the Match instance.
if (match.Success)
{
    // Finally, we get the Group value and display it.
    string key = match.Groups[1].Value;
    MessageBox.Show(key);
}

エラーが発生します:

追加情報: "user_pref(" network.proxy.autoconfig_url "、"(。*) ""の解析-十分ではありません)。

私の正規表現は何らかの形で奇形ですか?

4

2 に答える 2

8

(文字を文字どおりに一致させたい場合は、最初のブラケットをエスケープします。

string startIndex = "user_pref\\(\"network.proxy.autoconfig_url\", \"";
于 2012-12-21T13:54:52.503 に答える
0

これを修正します。

"user_pref(\"network. -> "user_pref\(\"network.
                                   ^ 
于 2012-12-21T13:56:40.643 に答える