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

标签 java regex

我需要匹配任一字母 A前面是 1-5数字或字母 B前面是 1-4数字。

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

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

有什么解决办法吗?

最佳答案

this matches the last 4 digits before an A

要求您的正则表达式之前的项目以数字开头:

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

另一种解决方案是使用 \b 要求一个单词边界

lookahead/lookbehind tutorial

关于java - 正则表达式匹配字母前的 4 或 5 位数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42578143/

相关文章:

Python re.findall 与 groupdicts

php正则表达式文件名

除 .hg_keep 之外的所有文件的正则表达式

PHP 正则表达式显示问题

java - Facebook access_token 检索

java - 为什么即使不使用 volatile,在一个线程中修改共享变量也会影响另一个线程?

java - Play Http.Context 实现

java - 如何获取当前位置和下一个当前位置之间的距离

java - Tomcat 7 : Connection reset by peer or Software caused connection abort

javascript - 使用 javascript 正则表达式在大文本中查找首字母缩略词