所以我在C#中建立一个用户可以输入名字的小解析器。现在,这些名字可以在threeformats:正则表达式用于删除标点符号但忽略正斜杠?
"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
?请注意0之间的额外空格。
你尝试以一个斜线添加到您的忽略模式? '新的正则表达式(@“[^ - \ w \ s /]”);' – DolceVita
首先拆分字符串,并处理每个2个子字符串,然后再回来。如果没有'/',只处理唯一的'name'部分。 –
额外空间与问题有什么关系?你说“注意”,但据我所知,他们与这个问题无关。如果它们相关,请详细解释。 –