我想使用regEx从字符串的开头和结尾删除单引号,括号和方括号。 例如
请帮我创建一个regEx来同时执行所有这些任务。
答案 0 :(得分:3)
你没有需要正则表达式。 string.Trim
是“数量”的最佳实现,()或[]可以是任何所有应删除的“要求和测试#5。
var cleaned = dirty.Trim("'()[]".ToCharArray());
通过一些测试:
const string expected = "My name";
Func<string, string> clean = given => given.Trim("'()[]".ToCharArray());
Assert.AreEqual(expected, clean("'My name'"));
Assert.AreEqual(expected, clean("[My name]"));
Assert.AreEqual(expected, clean("(My name)"));
Assert.AreEqual(expected, clean("'([My name])'"));
Assert.AreEqual(expected, clean("('My name]'"));
Assert.AreEqual(expected, clean("''([[[(My name)]]])''"));
Assert.AreEqual("My n'am]e", clean("My n'am]e"));
答案 1 :(得分:0)
这样的事情可能有用:
s/^['\[(]*(.*)['\](]*$/$1/