正则表达式匹配字母前的4或5位数

时间:2017-03-03 11:49:59

标签: java regex

我需要匹配前面带有A数字的字母1-5或带有B数字前面的字母1-4

所以我的正则表达式看起来像这样: (\d{1,5}A)|(\d{1,4}B)

但这匹配A之前的最后4位数字。

任何解决方案?

2 个答案:

答案 0 :(得分:4)

  

这匹配A

之前的最后4位数字

要求正则表达式之前的项目前面有一个数字:

(?<!\d)((\d{1,5}A)|(\d{1,4}B))

另一种解决方案是要求{em>字边界与\b

lookahead/lookbehind tutorial

答案 1 :(得分:0)

有些事情:

(\d{1,5}A)|(\d{1,4}B)

我建议你看看cheatsheet。如果你不熟悉正则表达式并尝试自己做这些简单的正则表达式。

还有很多在线正则表达式测试应用程序,例如:regextester,可让您在不编写任何代码的情况下测试正则表达式。