gpt4 book ai didi

Python Regex 为什么它不能找到所有双字?

转载 作者:太空宇宙 更新时间:2023-11-03 15:17:01 25 4
gpt4 key购买 nike

我需要匹配双字,但我的正则表达式无法正常工作。

L = "let's s?,play%3with,1symbols88,/symbols"
pattern = r'(\b\S+\b)[\d\s\.,-?\)\(!\/]+\b\1\b'
r = re.compile(pattern, re.IGNORECASE)
print(re.findall(r, L))

# Outputs: ['s']
# Expected: ['s','symbols']

https://regex101.com/r/frz8kQ/3

最佳答案

您可以使用更基本的正则表达式 Counter :

import re
from collections import Counter
text = "let's s?,play%3with,1symbols88,/symbols"

word_pattern = re.compile('[a-z]+', re.I)
word_counter = Counter(re.findall(word_pattern, text))
print([word for word, counter in word_counter.items() if counter > 1])
# ['symbols', 's']

关于Python Regex 为什么它不能找到所有双字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43805590/

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