首页 > 解决方案 > 如何在 HTML5 中编写字母数字模式?

问题描述

我在表单中有一个职位字段,我希望它允许只包含字母和数字的响应,其中至少需要一个字母,任何数字都是可选的。我在输入标签中使用以下模式:

pattern="\w*[a-zA-Z]\w*"

这种模式在我尝试使用的 RegEx 测试仪上进行了检查,但是当我在“Manager 2”表单上提供答案时,它不会让我继续。浏览器的解释方式有什么不同吗

标签: htmlregex

解决方案


如果您在表单上使用模式属性^,则and$是隐含的,因此它将匹配整个值。您的模式\w*[a-zA-Z]\w*至少匹配一个字符 az 但不匹配空格。

如果你想匹配Manager 2,你可以使用你的模式,后跟一个重复 0+ 次匹配空格和 1+ 个单词字符的组。

\w*[a-zA-Z]\w*(?: \w+)*

查看正则表达式演示

请注意,它\w也匹配下划线。

更广泛的模式以允许多个空格,并且在最后:

^\w*[a-zA-Z][ \w]*

正则表达式演示


推荐阅读