Regex.Replace и статический контекст? - PullRequest
6 голосов
/ 08 октября 2010

У меня есть этот код здесь:

private Func<string, string> RemoveSpecialChars = str => Regex.Replace(str, "[ ./\\-]");

Его жалоба ( Не удается получить доступ к нестатическому методу Replace в статическом контексте ) о вызове Replace из-за статического контекста.Что не так?

Спасибо:)

Ответы [ 2 ]

19 голосов
/ 08 октября 2010

Вам нужно использовать метод Regex.Replace(input,pattern,replacement), тот, который вы используете не является статичным:

private Func<string, string> RemoveSpecialChars = 
                       str => Regex.Replace(str, "[ ./\\-]", replacementString);
6 голосов
/ 08 октября 2010

Статическая перегрузка Regex.Replace имеет другую подпись:

public static string Replace(
    string input,
    string pattern,
    string replacement
)

Вам не хватает параметра replacement

...