我需要清理文件名。所以我有这个代码:
//\W_ is any non-word character (not [^a-zA-Z0-9_]).
Regex regex = new Regex(@"[\W_]+");
return regex.Replace(source, replacement);
这样可以正常工作,但现在我不想删除减号( - ),所以我将正则表达式更改为:
[\W_^-]+
但这不起作用。我错过了什么?
答案 0 :(得分:18)
尝试使用此正则表达式:
[^\w-]+
击> <击> 撞击>
修改:
似乎正确的正则表达式是:
[^a-zA-Z0-9-]+
答案 1 :(得分:2)