Python正则表达式字符串

2024-04-25 04:17:49 发布

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

作业练习: 插入正则表达式字符串(只是字符串),它将匹配任意数量的1和0(甚至没有1和0),后跟正好三个0。例如字符串

"101000100 00101000 1010 1000"

正则表达式模式应该给出三个匹配项(使用findall()):

['101000', '00101000', '1000']

我的回答是:

r"[10]*1000"

但这似乎不是他们想要的答案。有什么建议吗


Tags: 字符串答案数量作业模式建议findall
1条回答
网友
1楼 · 发布于 2024-04-25 04:17:49

我想你想要这样的东西

>>> s = "101000100 00101000 1010 1000"
>>> m = re.findall(r"\b[10]*?000\b", s)
>>> m
['101000', '00101000', '1000']
  • \b匹配单词字符和非单词字符的单词边界
  • [10]*?匹配0或1零次或多次(尽可能短的匹配)
  • 000正好是3个0
  • \b并且匹配的0必须后跟单词边界

相关问题 更多 >