是否有任何人有一个方便的准备使用方法来转义通配符,字符串中的无效字符将被分配给C#中RowFilter
的{{1}}。规则有点像下面
DataView
谢谢:)
答案 0 :(得分:3)
这将根据here
中更详细列出的规格进行操作protected void Page_Load(object sender, EventArgs e)
{
CheckValue("fefe[][]12#");
CheckValue("abvds");
CheckValue("#");
CheckValue(@"[][][][][]\\\\\][]");
CheckValue("^^^efewfew[[]");
}
public static string CheckValue(string value)
{
StringBuilder sBuilder = new StringBuilder(value);
string pattern = @"([-\]\[<>\?\*\\\""/\|\~\(\)\#/=><+\%&\^\'])";
Regex expression = new Regex(pattern);
if (expression.IsMatch(value))
{
sBuilder.Replace(@"\", @"\\");
sBuilder.Replace("]", @"\]");
sBuilder.Insert(0, "[");
sBuilder.Append("]");
}
return sBuilder.ToString();
}
我把它扔进了我正在看的网页,所以忽略了Page_Load,当然还有你想要的测试。
希望有所帮助。