Java AANNN和ANEE格式的正则表达式模式
我需要Java AANNN和ANEE格式的正则表达式模式,java,regex,Java,Regex,我需要AANNN和ANEE格式的正则表达式模式 A表示字母 N表示数字 E表示字母或数字 我需要根据这些格式验证输入字符串 示例 BD123与AANNN G21H与ANEE 我假设您想要ASCII字母和数字,而不是泰语数字、阿拉伯语字母等 AANNN是(?i)^[a-z]{2}[0-9]{3}$ ANEE是(?i)^[a-z][0-9][a-z0-9]{2}$ 解释 ^锚定声明我们位于字符串的开头 [a-z]就是所谓的字符类。它允许a和z之间的任何字符 在一个字符类中,我们可以包含几个范
AANNN
和ANEE
格式的正则表达式模式
表示字母A
表示数字N
表示字母或数字E
与BD123
AANNN
与G21H
ANEE
AANNN
是(?i)^[a-z]{2}[0-9]{3}$
ANEE
是(?i)^[a-z][0-9][a-z0-9]{2}$
锚定声明我们位于字符串的开头^
就是所谓的字符类。它允许[a-z]
和a
之间的任何字符李>z
- 在一个字符类中,我们可以包含几个范围,这就是为什么
是E
[a-z0-9]
- 通常对于
您必须说出类似A
的内容,但是[A-zA-Z]
标志使其不区分大小写(?i)
是一个量词,表示“两次匹配前面的表达式”{2}
锚点断言我们在字符串的末尾$
if (subjectString.matches("(?i)^[a-z]{2}[0-9]{3}$")) {
// It matched!
}
else { // nah, it didn't match... }
正则表达式很有趣!我强烈建议您从这些资源中学习
资源
- 堆栈溢出
- 掌握正则表达式,第3版
- 正则表达式食谱,第二版