python在regex中使用变量作为重复量

2024-04-23 08:24:51 发布

您现在位置:Python中文网/ 问答频道 /正文

例如,如果一个子字符串包含一定数量的某个字符,我想匹配它。然而,我不知道字符的确切数量,但我知道它不是负数。我该怎么写这个正则表达式?在

from sys import stdin
import re
k = int(raw_input())
combo = re.compile(r'(?=(.*1.*){k})')
print [ s for s in combo.findall(stdin.readline().strip()) ]

这有可能吗?如果是,我该怎么做?在

编辑: 输入示例: k=2 字符串=01010

预期输出:“101”,“0101”,“1010”,“01010”

所以在每个子字符串中,它只包含2个字符“1”


Tags: 字符串fromimportreinput数量rawstdin
1条回答
网友
1楼 · 发布于 2024-04-23 08:24:51

regex是字符串,因此可以使用您最喜欢的字符串格式结构:

combo = re.compile(r'(?=(.*1.*){%d})' % k)

关于您编辑的问题,我找不到一个简单的方法来处理regexp,下面如何?在

^{pr2}$

相关问题 更多 >