我只是用正则表达式匹配了一个字符串。
我想匹配一个包含 3 个字母/数字组合的字符串。它可能包含一个 A、B 或 L,后跟一个数字 1-3。(如果是 L,1-4)
我的问题: 当一个字母匹配多次时,我不想匹配字符串。所以A、B、L只能出现一次。
到目前为止我的表达:
(?:[A|L|B](?(?<=L)[1-4]|[1-3])){3}
此时匹配的测试字符串:
L2B1A3
B2L1A2
A1B1L4
A1A2A3
此时不匹配的字符串:
L4B4A1 (Only L can have a digit that's 4)
L2A1B (Missing digit)
我不想匹配的字符串(现在匹配):
A2A2A3 (The A, B and L only may occur one time!)