编程语言
首页 > 编程语言> > c#-无法将“#”检测为特殊键(Regex Asp.net)

c#-无法将“#”检测为特殊键(Regex Asp.net)

作者:互联网

我是Asp的新手.我使用正则表达式检查密码输入时遇到问题.这里的正则表达式

<asp:RegularExpressionValidator ID="Regex1" runat="server" 
                    ErrorMessage="Password must contain: Minimum 8 characters atleast 1 UpperCase Alphabet, 1 LowerCase Alphabet, 1 Number and 1 Special Character" 
                    Font-Italic="True" Font-Size="Small" ForeColor="Red" 

                    ValidationExpression="^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[$@$!%*?&amp;])[A-Za-z\d$@$!%*?&amp;]{8,}"
                    ControlToValidate="TextBoxNewPassword" Display="Dynamic" />

当我输入“ Hamlida123#”时,正则表达式不允许它.如何解决呢?

解决方法:

您需要在正则表达式中专门包含’#`字符,如下所示:

ValidationExpression="^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[$@$!%*?&amp;#])[A-Za-z\d$@$!%*?&amp;#]{8,}"

Demo

根据您当前的正则表达式,我假设您只允许某些非单词字符,因此您需要如上所述在正则表达式中列出每个允许的字符.

标签:special-characters,asp-net,c,regex
来源: https://codeday.me/bug/20191120/2041288.html