【发布时间】:2021-10-06 17:28:19
【问题描述】:
我有一个充满元数据的字符串,我只想检索一些具有模式的独特尾声:一个字母 + 4 个数字,即:R0001、D0453、L0465
我目前正在查询这个:
re.findall(r'\bD[0-9999]*', test_data6)
然后我更改所有字母表的字母并运行脚本。有没有一种方法可以轻松找到所有特定模式?
我试过了:re.findall(r'\b[A-Z]+[0-9999]*', test_data6),但没有得到我需要的东西
【问题讨论】:
-
[0-9999]是写[0-9]的一种非常低效的方式。字符类匹配单个字符;再次提及同一个字符不会使其匹配更多字符。 -
re.findall(r'\b[A-Z]\d{4}\b', test_data6) -
简而言之,您当前的
[0-9999]是在说“我想要字符0,1,2,3,4,5,6,7,8,9以及9和9和9。而不是[0-9]{4}