regex - 得到字母后跟连续数字正则表达式
问题描述
import re
s = 'A1902022 N18-2181 A1234567 1-22-2001 A928882190 '
我有以下字符串s
,我想得到字母A
后跟 7 位数字。我试过以下
reg = r'[()\d]{7,}'
r1 = re.findall(reg,s)
这给了我
['1902022', '1234567', '928882190']
我想要以下输出
['A1902022', 'A1234567']
我该如何调整
reg = r'[()\d]{7,}'
得到我想要的输出?
解决方案
A
最初匹配一个。因为字符串中没有任何括号,所以()
在字符集中包含似乎没有用 - 然后,只需将 7 个数字与 匹配\d{7}
,并确保后面没有另一个数字:
A\d{7}(?!\d)
推荐阅读
- typescript - 打字稿 - 无法更新对象内的对象
- r - R 包中测试文件的位置
- python - 我如何检查一个标识符是 dunder 还是 class-private(即会被破坏)?
- unix - 在 UNIX shell 脚本中为每“n”次执行引入等待时间
- mysql - 无法使用密码登录 mysql - Ubuntu
- javascript - 如何编写 xpath 以使用 Selenium 和 C# 从文本节点中提取日期
- windows - 域脱机时,如何使用凭据提供程序中本地缓存中的 UPN 名称翻译或查询缓存域用户的 SAM 帐户名称?
- apache-nifi - Nifi:在对 ExetuSQL/ExecuteSQLRecord 分页后计算总行数
- java - 冲突 -- Java 错误 --- 错误:(16,114) java: 非法转义字符
- grammar - 如何定义一种不符合乔姆斯基层次结构的语言?