正则表达式匹配两个单词和首字母

时间:2014-02-28 11:45:32

标签: regex

我有一个包含两个单词的字符串,即firstname和lastname。它们可以以任何模式出现,例如:

Brad Pitt
Brad P
B Pitt
P Brad
Pitt B
Pitt Brad

它应该只包含上面的字符串(只有两个单词),任何其他字符串都应该被取消资格。可以有空格或逗号分隔字符串中的单词。有人可以帮助提供正则表达式以匹配上述情况吗?我试过 / ^(?=。 \ bbrad | b | p | pitt \ b)(?=。 \ bbrad | p | b | pitt \ b)。* $ / i ,但这只会验证字词,而不会返回正确的匹配。

感谢你的帮助。

2 个答案:

答案 0 :(得分:0)

试试:

/^(Brad P(itt)?)|(B(rad)? Pitt)|(P(itt)? Brad)|(Pitt B(rad)?)$/i

如果您接受B PP B,您可以将其简化为:

/^(B(rad)? P(itt)?)|(P(itt)? B(rad)?)$/i

答案 1 :(得分:0)

  

它应仅包含上述字符串(仅两个字)和任何字符串   其他字符串应取消资格。 可以有空格或   逗号分隔字符串中的单词

  ^([A-z][A-z]+)[ ]+([A-z][A-z]+)$