javascript - 尝试匹配名字标题..或不匹配,视情况而定

标签 javascript regex jquery-validate

如果有人在我设置的输入框中输入标题,我会尝试返回不匹配的结果。

我目前拥有的是:

^\s*(?!Dr|Mr|Mrs|Miss|Ms).*?$

除了不匹配“Drake”、“Missy”甚至不匹配“Dr.Dennis”外,它工作正常 或“丹尼斯博士”。我知道反向匹配此人的头衔会更容易,但我必须重写我们的整个验证规则,因为所有其他人都返回匹配项,并且在不匹配时出错。

有人知道我该怎么做吗?

最佳答案

你可以像这样为你的负面展望添加一个单词边界

^\s*(?!(?:Dr|Mr|Mrs|Miss|Ms)\b).*?$

查看here on Regexr

希望我理解正确。这个单词边界 \b 确保你的标题后有一个非单词字符,这样它就不会忽略像 Drake 这样的东西。

(?:) 是一个非捕获组,这意味着您列表中的内容不会像普通组 () 那样放入变量中.

关于javascript - 尝试匹配名字标题..或不匹配,视情况而定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6416243/

相关文章:

javascript - 如何将用户的选择设置到我的数组中并随机选择元素

javascript - "push()"方法返回数组而不是数组的长度(JavaScript)

javascript - 如何等待订阅建立?

javascript - 正则表达式匹配整个字符串但不区分大小写

javascript - jQuery Textarea 验证不起作用

jquery - selectpicker 和 jQuery 验证插件的错误放置

javascript - AngularJs:在不同的组/表单/div 中使用 TAB 键进行键盘导航

javascript - 正则表达式从完整 url 中删除文件名

c# - 正则表达式匹配所有特定的重复单词

同一表单组的 JQuery 验证和 Bootstrap 3