javascript - 名字和姓氏正则表达式

标签 javascript regex

我编写了一个正则表达式来匹配我网站上注册表单的名字/姓氏。 要求是:

  • 最多 44 个字符
  • -' 可接受
  • 名称中可以有一个空格
  • 不需要 Unicode

有什么办法可以让我的表情变短吗?

^[a-zA-Z]{2,12}['-]?[a-zA-Z]{1,10}\s?[a-zA-Z]{2,12}['-]?[a-zA-Z]{1,10}$

名称字段的限制是否太多?

最佳答案

首先,使用正则表达式,响应最多为 47 个字符:12+1+10+1+12+1+10。

我认为对您来说最好的方法是允许包含字母、逗号、减号或空格的 44 个字符。

您可以强制第一个字符为字母:

^[a-zA-Z][a-zA-Z\-'\s]{0,43}$

关于javascript - 名字和姓氏正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13902814/

相关文章:

python - 多个组中的一个角色

正则表达式查找配置文件中的所有子网 block

javascript - 使用innerHTML Angular时将点击事件绑定(bind)到外部内容

javascript - AngularJS:在键入时将输入文本转换为标题大小写

Java-替换括号中的字符串

regex - grep正则表达式返回子字符串但排除注释

c# - 用于检查电视节目的正则表达式

javascript - 事件委托(delegate)和窗口与 window.document

javascript - 如何实现一个 JS 观察器来观察多个字段

javascript - 全日历 : Ignore events during select