Úvod do regulárních výrazů

Regular Expressions in Python

Maria Eugenia Inzaugarat

Data Scientist

Co je regulární výraz?

REGulární EXprese neboli regex:

Řetězec obsahující kombinaci běžných znaků a speciálních metaznaků, který popisuje vzory pro hledání textu nebo pozic v textu

Regular Expressions in Python

Co je regulární výraz?

REGulární EXprese neboli regex:

Řetězec obsahující kombinaci běžných znaků a speciálních metaznaků, který popisuje vzory pro hledání textu nebo pozic v textu

  • Běžné znaky odpovídají samy sobě (st)
Regular Expressions in Python

Co je regulární výraz?

REGulární EXprese neboli regex:

Řetězec obsahující kombinaci běžných znaků a speciálních metaznaků, který popisuje vzory pro hledání textu nebo pozic v textu

  • Metaznaky reprezentují typy znaků (\d, \s, \w) nebo koncepty ({3,10})
Regular Expressions in Python

Co je regulární výraz?

REGulární EXprese neboli regex:

Řetězec obsahující kombinaci běžných znaků a speciálních metaznaků, který popisuje vzory pro hledání textu nebo pozic v textu

  • Metaznaky reprezentují typy znaků (\d, \s, \w) nebo koncepty ({3,10})
Regular Expressions in Python

Co je regulární výraz?

REGulární EXprese neboli regex:

Řetězec obsahující kombinaci běžných znaků a speciálních metaznaků, který popisuje vzory pro hledání textu nebo pozic v textu

  • Metaznaky reprezentují typy znaků (\d, \s, \w) nebo koncepty ({3,10})
Regular Expressions in Python

Co je regulární výraz?

REGulární EXprese neboli regex:

Řetězec obsahující kombinaci běžných znaků a speciálních metaznaků, který popisuje vzory pro hledání textu nebo pozic v textu

  • Metaznaky reprezentují typy znaků (\d, \s, \w) nebo koncepty ({3,10})
Regular Expressions in Python

Co je regulární výraz?

REGulární EXprese neboli regex:

Řetězec obsahující kombinaci běžných znaků a speciálních metaznaků, který popisuje vzory pro hledání textu nebo pozic v textu

  • Vzor: posloupnost znaků mapující se na slova nebo interpunkci
Regular Expressions in Python

Co je regulární výraz?

REGulární EXprese neboli regex:

Řetězec obsahující kombinaci běžných znaků a speciálních metaznaků, který popisuje vzory pro hledání textu nebo pozic v textu

  • Použití porovnávání vzorů:

    • Hledání a nahrazování textu
    • Ověřování řetězců
  • Velmi výkonné a rychlé

Regular Expressions in Python

Modul re

import re
  • Nalezení všech shod vzoru:

re.findall(r"#movies", "Love #movies! I had fun yesterday going to the #movies")
['#movies', '#movies']
Regular Expressions in Python

Modul re

import re
  • Rozdělení řetězce při každé shodě:

re.split(r"!", "Nice Place to eat! I'll come back! Excellent meat!")
['Nice Place to eat', " I'll come back", ' Excellent meat', '']
Regular Expressions in Python

Modul re

import re
  • Nahrazení jedné nebo více shod řetězcem:

re.sub(r"yellow", "nice", "I have a yellow car and a yellow house in a yellow neighborhood")
'I have a nice car and a nice house in a nice neighborhood'
Regular Expressions in Python

Podporované metaznaky

re.findall(r"User\d", "The winners are: User9, UserN, User8")
['User9', 'User8']

re.findall(r"User\D", "The winners are: User9, UserN, User8")
['UserN']
Regular Expressions in Python

Podporované metaznaky

re.findall(r"User\w", "The winners are: User9, UserN, User8")
['User9', 'UserN', 'User8']

re.findall(r"\W\d", "This skirt is on sale, only $5 today!")
['$5']
Regular Expressions in Python

Podporované metaznaky

re.findall(r"Data\sScience", "I enjoy learning Data Science")
['Data Science']

re.sub(r"ice\Scream", "ice cream", "I really like ice-cream")
'I really like ice cream'
Regular Expressions in Python

Lass uns üben!

Regular Expressions in Python

Preparing Video For Download...