C# Regex delete '[]'

本文关键字:Regex delete | 更新日期: 2023-09-27 17:50:59

我有这个简单的代码:

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

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

当我简单地在""之间添加[]时,它不起作用。

C# Regex delete '[]'

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

str = new string(str.Where(c => !"[]".Contains(c)).ToArray());

如果你要在正则中匹配的集合中添加括号,特别是],你必须小心你把它放在哪里;它必须是集合中的第一个字符(这是可行的,因为不允许创建空集合)。所以…

Regex remove2 = new Regex("[][('"{}'r)]")

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

     string str1 = "test=[[]]][[]";
     string res = Regex.Replace(str1, "[][]","");

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

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

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