Java 用于验证2个字母数字的正则表达式
我有下面的模式来验证字符串,它必须验证4个字母、6个数字、6个字母和2个字母数字,但我当前的模式无法得到有效的测试Java 用于验证2个字母数字的正则表达式,java,regex,pattern-matching,Java,Regex,Pattern Matching,我有下面的模式来验证字符串,它必须验证4个字母、6个数字、6个字母和2个字母数字,但我当前的模式无法得到有效的测试 Pattern.compile("[A-Za-z]{4}\\d{6}\\w{6}\\[A-ZÑa-zñ0-9\\- ]{2}"); 我认为我的模式是错误的,因为我对这个[A-ZñA-Zñ0-9\\-]{2} 你能帮帮我吗?你可以使用图案: ^[a-zA-Z]{4}[0-9]{6}[a-zA-Z]{6}[a-zA-Z0-9]{2}$ 现场检查。 在表达式中,您使用的是\w+,它不
Pattern.compile("[A-Za-z]{4}\\d{6}\\w{6}\\[A-ZÑa-zñ0-9\\- ]{2}");
我认为我的模式是错误的,因为我对这个[A-ZñA-Zñ0-9\\-]{2}
你能帮帮我吗?你可以使用图案:
^[a-zA-Z]{4}[0-9]{6}[a-zA-Z]{6}[a-zA-Z0-9]{2}$
现场检查。
在表达式中,您使用的是\w+
,它不仅匹配数字和字母字符,而且还加下划线。您可以使用模式:
^[a-zA-Z]{4}[0-9]{6}[a-zA-Z]{6}[a-zA-Z0-9]{2}$
现场检查。
在表达式中使用的是\w+
,它不仅匹配数字和字母字符,而且在正则表达式中加下划线
- 数字和单词匹配中有额外的反斜杠。从
\\d
更改为\d
和\\w
更改为\w
- 不需要
\\
- 您的end regex语法无效。只需删除
“\\-”
位
您还可以将初始零件精简为\w
,而不是[A-Za-z]
。因此,您是新的正则表达式,应该如下所示:
"\w{4}\d{6}\w{6}[A-ZÑa-zñ0-9]{2}"
也就是说,如果您同意在最后两个字母数字中只有非ascii字符是ñ和ñ的话。在您的正则表达式中有一些内容
- 数字和单词匹配中有额外的反斜杠。从
\\d
更改为\d
和\\w
更改为\w
- 不需要
\\
- 您的end regex语法无效。只需删除
“\\-”
位
您还可以将初始零件精简为\w
,而不是[A-Za-z]
。因此,您是新的正则表达式,应该如下所示:
"\w{4}\d{6}\w{6}[A-ZÑa-zñ0-9]{2}"
国际支持:国际支持:国际支持:国际支持:国际支持:
国际支持:<代码>国际支持:
或者:(?U)^\\p{Alpha}{4}\\p{Digit}{6}\\p{Alpha}{6}\\p{Alnum}{2}$