java正则表达式数字,字母,大写,小写

时间:2014-05-05 13:56:24

标签: java regex

我需要Java中的正则表达式,并满足以下要求:

  • 只能包含字母和数字
  • 必须至少包含一位数
  • 必须至少包含一个upperCase字母和一个lowerCase字母

我尝试了几种不起作用的表达式 - 这是迄今为止最好的表达方式:

(?=.*\\d)(?=.*[a-z])(?=.*[A-Z]).*

1 个答案:

答案 0 :(得分:2)

锚定你的正则表达式,不要使用允许任何内容的.

^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])[a-zA-Z0-9]*$

^$匹配字符串的开头和结尾,[a-zA-Z0-9]*确保字符只是字符类中的字符。