回答
是的,這是可能的。您可以使用positive lookahead。
>>> import re
>>> [m.start() for m in re.finditer(r'f(?=f)', 'fff')]
[0, 1]
函數'finditer'只返回非重疊實例。 「返回一個產生MatchObject實例遍歷字符串中RE模式的所有非重疊匹配的迭代器」see http://docs.python.org/2/library/re.html – 2014-02-09 18:07:17
@Desolator你讀過['re .findall'](http://docs.python.org/2/library/re.html#re.findall)你在答案中使用? –
缺點是'm.groups()'不再非常有用 – nodakai
是的。使用findall(string[, pos[, endpos]])
到的findAll()函數,使用編譯的模式類似,但也 接受可選POS和endpos參數限制搜索 區域像匹配()。
即每次您將從之前的比賽+ 1
的m.start()
開始搜索。
- 1. Ruby正則表達式匹配多次
- 2. Python正則表達式匹配多次
- 3. 正則表達式匹配多表達
- 4. 正則表達式:在正則表達式區域內匹配多次(emacs)
- 5. 正則表達式匹配
- 6. 正則表達式匹配
- 7. 正則表達式匹配%
- 8. 正則表達式匹配
- 9. 正則表達式匹配
- 10. 正則表達式 - 匹配
- 11. 正則表達式匹配
- 12. 匹配正則表達式
- 13. 正則表達式 - 匹配
- 14. 正則表達式匹配
- 15. 正則表達式匹配
- 16. 正則表達式匹配
- 17. 正則表達式匹配
- 18. 匹配正則表達式{
- 19. 正則表達式匹配
- 20. 正則表達式匹配「|」
- 21. 正則表達式匹配
- 22. 正則表達式匹配
- 23. 正則表達式匹配
- 24. 正則表達式:匹配
- 25. 正則表達式匹配@「*」
- 26. 匹配正則表達式
- 27. 正則表達式:匹配
- 28. 匹配正則表達式
- 29. 正則表達式匹配
- 30. 正則表達式匹配
你是對的澤維爾。謝謝。 –