我有文件名0154562A5BS16101[001]
,我想在其中删除" [001]"离开0154562A5BS16101
。
我尝试过使用正则表达式:
var output = Regex.Replace(filename, @"[]", string.Empty);
但它抛出:
System.ArgumentException: 'parsing '[]' - Unterminated [] set.'
我觉得这对于Regex大师来说非常容易,但我对Regex没有多少经验。
答案 0 :(得分:4)
由于[
和]
是正则表达式语言中的元字符,因此您需要转义它们。您还需要告诉正则表达式,您希望将所有内容匹配到结束方括号:
var output = Regex.Replace(filename, @"\[[^\]]*\]", string.Empty);
末尾的 \[
和\]
是您要替换的方括号。中间的[^\]]*
部分匹配结束方括号以外的任意数量的字符。