gpt4 book ai didi

python - 如何匹配所有不包含连续两位数字的单词?

转载 作者:行者123 更新时间:2023-11-28 23:02:03 25 4
gpt4 key购买 nike

我有值列表,每个值都包含“pt”+ 2 位数字部分。但如果在那之后有“_digitdigit”——这个值应该被排除。

应匹配:data_pt01_pr、data_pt02_1_pr、data_pt02_2

不应匹配:data_pt01_01_pr、data_pt22_22、data_pt01_00_ABCD_1_bk_vi

我原以为 [^\d{2}] 之类的东西可以解决问题,但它并没有像我预期的那样工作。

最佳答案

使用否定的先行断言(?!...):

pattern = r'pt\d\d(?!_\d\d)'

此模式匹配 pt 后跟两位数字仅当它们后跟的不是下划线和两位数字。

>>> p = re.compile(pattern)
>>> bool(p.search("data_pt01_pr"))
True
>>> bool(p.search("data_pt02_2"))
True
>>> bool(p.search("data_pt01_01_pr"))
False
>>> bool(p.search("data_pt22_22"))
False

关于python - 如何匹配所有不包含连续两位数字的单词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10318936/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com