@1Tima1
Меня здесь не любят

Как работать с шаблонами?

я присвоил переменной один стих
нужно найти какие слова начинаются на букву с
re.findall(r'\bc\w*',mammouth)
['cheese', 'city', 'cheek', 'could', 'cast', 'crush']

стало интересно, что будет если поставить точку
re.findall(r'\bc\w.',mammouth)
['che', 'cit', 'che', 'cou', 'cas', 'cru']
и наконец
re.findall(r'\bc\w.*',mammouth)
['cheese,', 'city of Toronto.', 'cheek; then songs or glees', "could not sing o' Queen of Cheese.", 'cast a shade, even at noon;', 'crush them soon.']


суть вопроса
чем . отличается от * оба же показывают любые символы?!

почему при . показывают только 3 буквы?

там же есть ограничитель w, почему в .* показали другие символы и вообще пробелы?
  • Вопрос задан
  • 80 просмотров
Решения вопроса 1
Dr_Elvis
@Dr_Elvis Куратор тега Python
В гугле забанен
точка - это любой 1 символ
звездочка - это ноль или больше символов
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@iddqda
network engineer, netdevops
Это же регекспы
а с шаблонами совсем по другому работать
например вот так можно:
In [1]: template="""в {} сидел {} 
   ...: совсем как {}"""                                                                                                                                                                                                                                                                                                            

In [2]: text = template.format('траве', 'кузнечик', 'огуречик')                                                                                                        

In [3]: text                                                                                                                                                           
Out[3]: 'в траве сидел кузнечик\nсовсем как огуречик'
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы