是否可以在一个正则表达式中匹配多个独立的正则表达式?

时间:2015-05-19 16:05:10

标签: regex string

假设我想匹配“字符串应该在2到8个字符之间”,我会使用正则表达式/^.{2,8}$/

现在如果我想匹配“字符串应该包含至少一个数字”,我会使用正则表达式/\d/

最后,如果我想匹配“字符串应至少包含一个大写字母”,我会使用/[A-Z]/

但现在我想知道,在一个正则表达式中,是否可以将字符串与所有这些条件匹配?而且我并不是指OR时尚,我的意思是和时尚。

1 个答案:

答案 0 :(得分:1)

您可以使用以下内容:

^(?=.*\d)(?=.*[A-Z]).{2,8}$

说明:

  • (?=.*\d)展望至少一位数
  • (?=.*[A-Z])展望至少一个大写字母
  • .{2,8}实际匹配

请参阅DEMO

旧答案

^(?=.*\d.*[A-Z]).{2,8}$|^(?=.*[A-Z].*\d).{2,8}$

说明:

  • (?=.*\d.*[A-Z])展望至少一位数后跟一个大写字母
  • .{2,8}实际匹配或
  • (?=.*[A-Z].*\d)展望至少一个大写字母后跟一位数字
  • .{2,8}实际匹配

请参阅DEMO