Почему re имеет противоречивое соответствие одному и тому же выражению при использовании search и findall.
import re
msg = 'data from 192.168.10.255 and 10.10.10.10'
ipregex_d = re.compile('((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])')
op = ipregex_d.search(msg)
print (op)
op = ipregex_d.findall(msg)
print (op)
Вывод
# First hit on the search is properly matched
[('10.', '10', '255'), ('10.', '10', '10')] # IPs are not properly matched
Подробнее здесь: https://stackoverflow.com/questions/790 ... search-and
Несогласованное совпадение регулярного выражения Python для одного и того же выражения при использовании `search` и `fin ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение