簡體   English   中英

Python - 使用findall查找最長的序列

[英]Python - finding the longest sequence with findall

found = re.findall("g+", "fggfggggfggfg", re.DOTALL)

我想使用findall為模式找到最長的匹配項。 我找到了一些解決方案,但僅限於re.matchre.finditer 請問有人給我一個建議嗎?

re.DOTALL在這種情況下什么都不做,所以為了簡單起見我剛把它拿出來:

>>> import re
>>> max(re.findall("g+", "fggfggggfggfg"), key=len)
'gggg'

如果您需要按長度順序排列所有這些:

>>> sorted(re.findall("g+", "fggfggggfggfg"), key=len, reverse=True)
['gggg', 'gg', 'gg', 'g']

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM