【发布时间】:2023-02-22 17:01:54
【问题描述】:
我想用以下条件匹配一个字符串
- 必须以
A开头 - 后跟任何数字,除非是大写字母
- 后跟一个数字(应该被捕获)
A bcd 1 应该匹配并捕获 1
Abcd1 应该匹配并捕获 1
A bcd不应该匹配,因为没有号码
A bCd 1 不应该匹配,因为 A 和数字之间有一个大写字母 C
A bcd 1 B 应该匹配,因为 1 在 B 之前
我想出了
A(?!.*[A-Z])+?.*(\d+)
但这不适用于最后一个用例,因为负面前瞻超出了1
【问题讨论】: