所以我在C#中构建一个小解析器,用户可以在其中输入名称。现在这些名称可以是三种格式:
"name" OR "name / name" OR "name-name"
用户可能会编写一个带有不同标点符号的输入字符串,例如name?
或name.
要删除这些,我会得到正则表达式,如下所示:
var expression = "name / name";
var regexPunctuation = new Regex(@"[^-\w\s]");
expression = regexPunctuation.Replace(expression, string.Empty);
我的正则表达式适用于单个名称和名称,其中包含-
但不具有正斜杠的名称。如果用户输入name / name
,则结果仅为name name
。如何更改正则表达式以使其忽略正斜杠,结果为name / name
?记下name / name
。
答案 0 :(得分:0)
应该是这样的:
new Regex(@"[^-/\w\s]")
答案 1 :(得分:0)
尝试转发/
,如下所示:new Regex(@"[^-\/\w\s]")
答案 2 :(得分:0)
var regexPunctuation = new Regex(@"[^-\/\w\s]");