所以有很多问题,过滤了一些,我仍然不知道如何去做......
模式:
- 仅限字母,不区分大小写,不限制字符数或字数,最少 3 个字符...
我有
pattern="[A-z]{3,}"
这给了我一切,除了我只限于一个词...... :-(
编辑:让我更清楚地了解我希望验证为我实现的目标......
我用它来捕捉一个人的名字。但我不想涉及任何特殊字符或数字,所以没有“John Doe Jr.”,因为“。”会被拒绝,但我希望能够捕获双字符,甚至是单个字符部分,同时保持“全局”3 个字符的最小限制...
最佳答案
要允许空格,您需要做的就是在字符模式中添加一个空格,其中您有 [A-z]
。
于是变成了:
pattern="[A-z ]{3,}"
希望对您有所帮助。
但是请注意,这会阻止其他类型的空白字符。我假设这就是您想要的,因为您对其余字符集的限制非常严格,但值得指出的是,不间断空格、回车符和其他空格将在上面被阻止。如果您想允许它们,请使用 \s
而不仅仅是空格:这将匹配任何空白字符。
最后,值得指出的是,即使对于纯英文文本,标准字母表通常也不够用。有带重音符号的有效英语单词,以及撇号和其他标点符号。您没有指定该字段的用途,所以我认为这不是问题,但我觉得还是值得指出。
关于用于 HTML5 输入验证的 Javascript 正则表达式语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6329060/