我希望我的正则表达式只分配这些值:1a,1b,2a,2b,3a,3b,n。似乎我的正则表达式不起作用:" [([1-3] [a-b])(n)]"。为什么它没有"看到"包含[1-3] [a-b]的圆括号,这个正则表达式应该如何正常工作?
答案 0 :(得分:1)
我希望我的正则表达式只能分配这些值:
1a
,1b
,2a
,2b
,3a,3b
,n
。
这意味着,您需要使用
.matches("[1-3][ab]|n")
请参阅regex demo
在你的模式中,外部方括号创建了一个字符类,内部的方括号被视为unions,整个"[([1-3][a-b])(n)]"
只匹配1个字符((
或{ {1}}至1
数字,或3
至a
封信等。