正则表达式不适用于HTML5模式

时间:2015-06-22 18:54:24

标签: regex html5

所以我有这个正则表达式旨在传递所有文本,但包含初始字符的那些“34”序列:

  

^(?34)(?=(\ W] +))

正则表达式在https://regex101.com/r/iN1yN3/2中正常工作,检查测试以查看预期的行为。

任何想法为什么它不能以我的形式工作?

<form>
    <input pattern="^(?!34)(?=([\w]+))" type="text">
    
        <button type="submit">Submit!</button>
</form>

1 个答案:

答案 0 :(得分:4)

pattern属性必须匹配整个字符串。断言检查匹配,但不计入总匹配长度。将第二个断言更改为\w+将使模式与整个字符串匹配。

您也可以跳过隐含的^,只留下:

<input pattern="(?!34)\w+" type="text">