Asp.net 回车键触发RegularExpressionValidator

Asp.net 回车键触发RegularExpressionValidator,asp.net,regex,Asp.net,Regex,我有一个asp:Textbox,我试图确保用户不会复制和粘贴标签。下面的代码用于检查,但如果用户点击Enter或Return键在文本框中创建新行,它也会抛出错误消息。我需要对ValidationExpression进行哪些更改,以允许用户使用Enter/Return键,但不允许使用键 <asp:RegularExpressionValidator ID="RegularExpressionVal3" runat="server"

我有一个asp:Textbox,我试图确保用户不会复制和粘贴标签。下面的代码用于检查<和>,但如果用户点击Enter或Return键在文本框中创建新行,它也会抛出错误消息。我需要对ValidationExpression进行哪些更改,以允许用户使用Enter/Return键,但不允许使用<或>键

 <asp:RegularExpressionValidator ID="RegularExpressionVal3" runat="server"
                                    ErrorMessage="You cannot put tags into the text box (e.g. &lthtml&gt)"
                                    ControlToValidate="txtMSPC"
                                    ValidationExpression="^(?!<.*?>).*" ForeColor="Red" />

仅用于客户端验证,您可以使用

ValidationExpression="^(?![\\s\\S]*<[^>]*>)[\\s\\S]*"
ValidationExpression=“^(?![\\s\\s]*]*>)[\\s\\s]*”
详情:

  • ^
    -字符串的开头
  • (?![\\s\\s]*]*>)
    -no
    ,然后在字符串中添加
  • [\\s\\s]**
    -任何0+字符

仅用于客户端验证,您可以使用

ValidationExpression="^(?![\\s\\S]*<[^>]*>)[\\s\\S]*"
ValidationExpression=“^(?![\\s\\s]*]*>)[\\s\\s]*”
详情:

  • ^
    -字符串的开头
  • (?![\\s\\s]*]*>)
    -no
    ,然后在字符串中添加
  • [\\s\\s]**
    -任何0+字符

您的意思是在开始处或字符串内的任何位置都没有标签吗?请尝试
ValidationExpression=“^(?![\\s\\s]*]*>)[\\s\\s]*>”
。如果您只在服务器端运行验证,请尝试
ValidationExpression=“(?s)^(?。*]*>).*”
我正在查找客户端和字符串中的任何位置的标记。例如:“此文本为粗体”应抛出错误消息。对于上面的客户端表达式,它允许返回,但不允许任何字符或数字。您的意思是在字符串的开头或任何地方都没有标记吗?请尝试
ValidationExpression=“^(?![\\s\\s]*]*>)[\\s\\s]*>”
。如果您只在服务器端运行验证,请尝试
ValidationExpression=“(?s)^(?。*]*>).*”
我正在查找客户端和字符串中的任何位置的标记。例如:“此文本为粗体”应抛出错误消息。使用上面的客户端表达式,它允许返回,但不允许任何字符或数字。我正在寻找客户端。您的表达式返回了以下错误消息:未捕获的语法错误:无效的正则表达式:/(?s)^(?![\\s\\s]*]*>)[\\s\\s]*/:对不起,我很忙。当然
(?s)
应该被删除。我删除了我的评论,以确保不会混淆其他人。以上的答案工程所述。我正在寻找客户端。您的表达式返回了以下错误消息:未捕获的语法错误:无效的正则表达式:/(?s)^(?![\\s\\s]*]*>)[\\s\\s]*/:对不起,我很忙。当然
(?s)
应该被删除。我删除了我的评论,以确保不会混淆其他人。上面的答案是这样的。