我这里有这个代码:
private Func<string, string> RemoveSpecialChars = str => Regex.Replace(str, "[ ./\\-]");
由于静态上下文,它抱怨(无法访问静态上下文中的非静态方法替换)关于对Replace的调用。怎么了?
谢谢:)
答案 0 :(得分:19)
您需要使用方法Regex.Replace(input,pattern,replacement)
,the one you use不是静态的:
private Func<string, string> RemoveSpecialChars =
str => Regex.Replace(str, "[ ./\\-]", replacementString);
答案 1 :(得分:6)
Regex.Replace
的静态重载具有不同的签名:
public static string Replace(
string input,
string pattern,
string replacement
)
您错过了replacement
参数