C# 允许下划线“_&引用;作为一个特殊的角色
这是一个表达式,它不接受“u”作为特殊字符C# 允许下划线“_&引用;作为一个特殊的角色,c#,regex,C#,Regex,这是一个表达式,它不接受“u”作为特殊字符 {(?=.{8,})(?=(.*\d){0,})(?=(.*\W){1,})} 在模式内设置条件时,不要忘记实际使用字符,添加+以捕获1个或多个符号,或添加*以捕获0个或多个字符: {(?=.{8,})(?=(.*\d){0,})(?=(.*[^a-zA-Z0-9]){1,}).+} 但是,如果您想要求字符串至少有一个数字和至少一个非单词符号(不包括下划线),我建议使用 {(?=.{8,})(?=(?:.*\d){0,})(?=(?:.*[^a-z
{(?=.{8,})(?=(.*\d){0,})(?=(.*\W){1,})}
在模式内设置条件时,不要忘记实际使用字符,添加
+
以捕获1个或多个符号,或添加*
以捕获0个或多个字符:
{(?=.{8,})(?=(.*\d){0,})(?=(.*[^a-zA-Z0-9]){1,}).+}
但是,如果您想要求字符串至少有一个数字和至少一个非单词符号(不包括下划线),我建议使用
{(?=.{8,})(?=(?:.*\d){0,})(?=(?:.*[^a-zA-Z0-9]){1,}).+}
请参阅。您可能想解释一下您试图执行的操作:)上述表达式至少接受一个特殊字符,但“\u”除外。我希望这应该是允许的。非常感谢,但我担心的是,它不是接受“\u”作为特殊字符,而是接受它作为正常字符。正如我们所知,我们广泛使用下划线作为一个特殊的字符,但是<>代码> \W/Eng>将把代码> >代码>作为字母数字字符,旁边是A-SZ-Z0-9。@代码>将匹配
。
,在我的模式中没有\w
。是的,\w
匹配了\u
@stribizev,我只是回答了一句话:“我们知道,下划线是一种特殊字符,被广泛使用!”!我不是指你的回答,对不起!:-)@user2078643:我的正则表达式与下划线匹配,请检查它是否适用于您。此外,请将您的尝试添加到问题正文,否则问题将被关闭,可能会进一步被否决。