user input restriction, (white space, letter, or digit, '-' and '_') c#
我希望通过只允许(空格、字母或数字、"-"和"uo")来验证文本框上的用户输入。我想知道是否有人能帮我做那个regexp?我发现这个问题,但我正在尝试,但它不起作用。
以下是我正在使用的内容:
1 | if (!System.Text.RegularExpressions.Regex.IsMatch(NameTextBox.Text,"/^([a-zA-Z])([a-zA-Z0-9_ -])$/")) |
谢谢。
编辑-新方法。
实际上我决定用这个来代替regex,有什么理由我不应该这样做吗?
1 | if (!NameTextBox.Text.All(c=>Char.IsLetterOrDigit(c) || c==' ' || c=='_' || c=='-')) |
以上代码的参考。
尝试:
1 | ([a-zA-Z0-9-_\s]) |
该组匹配大小写a-z、0-9、"-"、"uu"和空白("s")。
我想这就是你想要的雷吉克斯:
1 2 3 4 5 6 | ^ match start of string \w will match any [A-Za-z0-9_] \s will match any whitespace - will match the - character {1,80} requires between 1 and 80 characters $ match end of string |
如果用空格表示,您只想匹配空格(而不是制表符),请将其切换到:
去掉开头和结尾的正斜杠,这是一个javascript的东西。