0

我有这个简单的代码:

Regex remove2 = new Regex("[(\"{}\r)]");
str = remove2.Replace(str, "");

我需要删除:[]字符,怎么做?

当我只是在它[]之间添加""它不起作用。

4

4 回答 4

0

这个简单的代码将删除方括号:

     string str1 = "test=[[]]][[]";
     string res = Regex.Replace(str1, "[][]","");
于 2013-01-09T00:11:08.427 回答
0

If you're adding brackets — specifically a ] — to the set matched in the RE, you've got to be careful about where you put it; it must be the first character in the set (which works because you're not allowed to make an empty set). So…</p>

Regex remove2 = new Regex("[][(\"{}\r)]")
于 2013-01-08T23:45:01.357 回答
0

您需要转义 [ 和 ] 字符 - 尝试

Regex remove2 = new Regex("\[(.*)\]");
str = remove2.Replace(str, "$1");

通过将部分模式包装在括号内,您实际上是将其保存以供以后使用。可以通过替换命令中的构造 $1 访问它。如果您在括号内捕获了第二个字符串,它将通过 $2 等访问。

于 2013-01-08T23:21:49.987 回答
0

没有正则表达式,但也删除了括号:

str = new string(str.Where(c => !"[]".Contains(c)).ToArray());
于 2013-01-08T23:22:22.923 回答