Re: [問題] 請問regular expression 可以找出重疊ꨠ…

看板Python作者 (殺.人.鬼)時間18年前 (2006/06/02 04:14), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串3/3 (看更多)
※ 引述《rclrn (Aethanyc)》之銘言: : 官方文件寫: : findall(pattern, string) : Return a list of all non-overlapping matches in the string. : 所以要找重疊的patter,只能自己寫了,例: : import re : s='Lawrence and Peter are my best friend' : m=[] : for i in range(len(s)): : x = re.match('\w{2}', s[i:]) : if hasattr(x, 'group'): : m.append(x.group()) : print m s = 'Lawrence and Peter are my best friend' m = [] while s: x = re.search('\w{2}', s) if x: s = s[x.start()+1:] m.append(x.group()) else: break 較快速的版本,原來的s會被破壞... s = 'Lawrence and Peter are my best friend' m = [] k = 0 while s: x = re.search('\w{2}', s[k:]) if x: k += x.start()+1 m.append(x.group()) else: break 不破壞s的版本... -- ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ - ██◤ ◥█◤ ██◣ ██◣ ██◤ ◢██ -▅▃ █ █ █ █▄▄ █ █ █ ◣ ◢ / - █ ██◢█ ▄▄▌ █ █ ◤ ◥ ◢█◣ █ ◣ ██◤ █ ██◤ ▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃ Mozilla Firefox -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.166.155.183

06/02 04:41, , 1F
第100篇XD
06/02 04:41, 1F

06/02 11:11, , 2F
太感謝了!!^^這邊真是高手如雲,而且大家都好熱心 ^^
06/02 11:11, 2F

06/02 11:20, , 3F
謝謝你:D
06/02 11:20, 3F
文章代碼(AID): #14VqgtQf (Python)
文章代碼(AID): #14VqgtQf (Python)