Содержание
- 2. Регулярные выражения https://ru.wikipedia.org/wiki/Регулярные_выражения В компьютерной терминологии «регулярное выражение» (его еще называют regexp или regex, сокр. «регулярка»)
- 3. Регулярные выражения Умный подход к анализу и сопоставлению строк, основанный на использовании метасимволов https://ru.wikipedia.org/wiki/Регулярные_выражения
- 4. О регулярных выражениях Очень мощные Регулярные выражения сами по себе напоминают язык программирования Пишутся с помощью
- 5. Регулярные выражения: краткое руководство ^ Начало всего текста или начало строки текста $ Конец всего текста
- 6. Модуль регулярных выражений Прежде чем вы сможете использовать в своей программе регулярные выражения, необходимо импортировать библиотеку,
- 7. Использование re.search(), как find() import re hand = open('mbox-short.txt') for line in hand: line = line.rstrip()
- 8. Использование re.search(), как startswith() import re hand = open('mbox-short.txt') for line in hand: line = line.rstrip()
- 9. Метасимволы Символ . (точка) означает один любой символ Символ * (звездочка) означает «ноль или более повторений»
- 10. Тонкая настройка соответствия В зависимости от «чистоты» данных и целей вашего приложения, вам может понадобиться немного
- 11. Тонкая настройка соответствия В зависимости от «чистоты» данных и целей вашего приложения, вам может понадобиться немного
- 12. Сопоставление и извлечение данных re.search() возвращает значение True/False в зависимости от того, соответствует ли строка регулярному
- 13. Сопоставление и извлечение данных re.findall() возвращает список из нуля или более подстрок, соответствующих регулярному выражению >>>
- 14. Жадные квантификаторы Квантификаторы (* и +) называют «жадными», так как в некоторых реализациях регулярным выражениям с
- 15. Ленивые квантификаторы Но не все квантификаторы регулярных выражений жадные! Добавьте символ ?, это немного охладит пыл
- 16. Тонкая настройка извлечения строк Вы можете точнее настроить поиск совпадения для re.findall() и отдельно указать, какая
- 17. Тонкая настройка извлечения строк Круглые скобки не являются частью совпадения, они лишь сообщают, где начинается и
- 18. Примеры анализа строк
- 19. >>> data = 'From [email protected] Sat Jan 5 09:14:16 2008' >>> atpos = data.find('@') >>> print(atpos)
- 20. Шаблон двойного разделения Иногда бывает необходимо сначала разделить строку одним образом, а затем взять один из
- 21. '@([^ ]*)' Просматривать строку пока не встретится символ @ From [email protected] Sat Jan 5 09:14:16 2008
- 22. Версия с регулярным выражением '@([^ ]*)' Захватить непробельные символы Ноль или более символов import re lin
- 23. Версия с регулярным выражением '@([^ ]*)' Извлечь непробельные символы From [email protected] Sat Jan 5 09:14:16 2008
- 24. Или так… '^From .*@([^ ]*)' Начиная с начала строки, ищем подстроку 'From ' From [email protected] Sat
- 25. Или так… '^From .*@([^ ]*)' Пропустим часть символов, пока не встретим символ @ import re lin
- 26. Или так… '^From .*@([^ ]*)' Начало извлечения From [email protected] Sat Jan 5 09:14:16 2008 import re
- 27. Или так… '^From .*@([^ ]+)' Захватить непробельные символы Захватить их как можно больше import re lin
- 28. Или так… '^From .*@([^ ]+)' Конец извлечения import re lin = 'From [email protected] Sat Jan 5
- 30. Скачать презентацию