正则表达式添加(和/

use*_*836 1 c# regex asp.net

我创建了这个正则表达式:

Regex checkTranslation = new Regex(@"[^\p{L}\s0-9!?,.]", RegexOptions.None);
Run Code Online (Sandbox Code Playgroud)

我希望能够添加标志:( /).所以现在,我不能写这样的文本(文本)或text1/text2我试图将其添加到我的正则表达式:

Regex checkTranslation = new Regex(@"[^\p{L}\s0-9!?,.\(\)\/)]", RegexOptions.None);
Run Code Online (Sandbox Code Playgroud)

但这似乎不起作用

sam*_*son 5

在字符集内部,您不需要转义某些字符,例如(和).以下应该有效:

Regex checkTranslation = new Regex(@"[^\p{L}\s0-9!?,.()/]", RegexOptions.None)
Run Code Online (Sandbox Code Playgroud)

具体来说,只需要对右括号(]),反斜杠(\),插入符号(^)和连字符( - )进行转义(如果连字符显示为第一个字符,则为连字符设置特殊情况它被匹配为正常字符).

  • 你不需要*逃避它们,但如果你*逃避它们,它不应该造成任何伤害. (5认同)