密码需由6~20位英文字母、数字或常用英文符号组成, 常用英文字符为
`~!@#$%^&*()_+-={}|[]\\:\";'<>?,./
这样的正则表达式在C#里怎么写
这个是安卓里的写法: string s = "^[0-9a-zA-Z/`/~/!/@/#/$/%/^/&/*/(/)/_/+/-/=/{/}/|/[/]/:/\"/;/'/</>/?/,/.//]{6,20}$";
求一个C#的写法
string pattern = @"^[0-9a-zA-Z`~!@#$%\^&*()_+-={}|\[\]:"";'<>?,.]{6,20}$";
把安卓写法的斜杠/改成反斜杠就行了.
改成反斜杠不行的,语法都通不过
正则表达式在某些语言中是十分类似的,看到安卓的写法,我也看到了C#的影子。如果是6~20位英文字母、数字的话,可以这样写:
1 string pattern = @"^[0-9a-zA-z]{6,20}$";
如果特殊字符只有下划线的话,可以用下面的字符串:
1 string pattern = @"^[0-9a-zA-z_]{6,20}$";
如果再包括左括号,右括号的话,可以用下面的字符串:
1 string pattern = @"^[0-9a-zA-z_\(\)]{6,20}$";
因为左括号,右括号在正则里面有其自己的用途,所以前面要加上右划线来区分下这个是一个匹配的字符,面不是带着匹配功能的括号。具体哪些特殊字符需要在之前加上右划线,这个就需要你自己去试了。