如果有人在我设置的输入框中输入标题,我会尝试返回不匹配的结果。
我目前拥有的是:
^\s*(?!Dr|Mr|Mrs|Miss|Ms).*?$
除了不匹配“Drake”、“Missy”甚至不匹配“Dr.Dennis”外,它工作正常 或“丹尼斯博士”。我知道反向匹配此人的头衔会更容易,但我必须重写我们的整个验证规则,因为所有其他人都返回匹配项,并且在不匹配时出错。
有人知道我该怎么做吗?
最佳答案
你可以像这样为你的负面展望添加一个单词边界
^\s*(?!(?:Dr|Mr|Mrs|Miss|Ms)\b).*?$
希望我理解正确。这个单词边界 \b
确保你的标题后有一个非单词字符,这样它就不会忽略像 Drake 这样的东西。
(?:)
是一个非捕获组,这意味着您列表中的内容不会像普通组 ()
那样放入变量中.
关于javascript - 尝试匹配名字标题..或不匹配,视情况而定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6416243/