【问题标题】:HTML5 input pattern search for quoteHTML5 输入模式搜索报价
【发布时间】:2012-03-09 17:28:46
【问题描述】:

我需要针对这个正则表达式测试一个输入字段 (<input type="text" />):

[^'"]+

这显然不是一件容易的事,因为我不能在属性中使用"。使用 quot 实体似乎不起作用,因为它会被正则表达式引擎逐字解释。

我怎样才能做到这一点?

【问题讨论】:

  • 我不敢相信人们实际上建议使用框架或库来处理正则表达式。嘘。

标签: regex html validation input


【解决方案1】:

您可以使用十六进制表示法代替'"

pattern="[^'\x22]+"

<form action="#">
<input type="text" title="no quotes!" pattern="[^'\x22]+">
<button type="submit">submit</button>
</form>

【讨论】:

    【解决方案2】:

    HTML5 @pattern 属性正则表达式基于 JavaScript 正则表达式,因此您可以像在 JavaScript 中一样使用 hexadecimal notationunicode notation 来表示该字符:

    " = \x22 OR \u0022
    ' = \x27 OR \u0027
    

    让你可以轻松使用

    pattern="[^'\x22]+"
    

    多田!不涉及 JavaScript 库! ;)

    【讨论】:

      猜你喜欢
      • 2011-07-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-17
      • 1970-01-01
      • 2012-07-20
      相关资源
      最近更新 更多