Step 4 (S-102136)

From Stepik Wiki
Jump to: navigation, search

Step on Stepik: https://stepik.org/lesson/24470/step/4

Step 4 (S-102136) 1.png

[00:00 - 00:15] также можно заказывать в регулярных выражениях нас интересуют некоторые числа повторов нашего символа или группы символов сначала рассмотрим это символ звездочка пишем звездочка после например символ об этом мы говорим что нас интересует любое число символов включая 0


[00:15 - 00:32] я слышу когда мы исполним данный код мы идем на самом деле все строки которые здесь указаны потому что здесь на 100 символов 1 символ обойтись 2 символа б если же нас интересует только положительные числа включая можно использовать этот символ + который указан 16 0 не интересует 1 2 3


[00:32 - 00:47] тогда я нахожу строя поэтому он только и амба использовать символ вопросик можем сказать можно совершить 0 или 1 вхождений символа б мы будем равна их мы не найдем вот если нас интересует конкретное число вхождений или


[00:47 - 01:04] от какого то до какого то количества то можно использовать символ фигурных скобок интересно сколько нужно взять то количество которое нас интересует например 3 то число вхождений которое вы указали если на 1 2 часа через запятую то 1 допустим от 2 до 4 вхождений


Step 4 (S-102136) 2.png

[01:04 - 01:20] стоит заметить что по умолчанию символов повторов будь то звездочка или прессик является жадными то есть не пытается вовлечь себя как можно больше символов при том чтобы наше все верно выражений удовлетворилась целиком это рассмотрены примерно следующее регулярное выражение


[01:20 - 01:37] следующая строка и не пытаюсь с помощью функции матч найти префикс нашей строки которые подходят под данные регулярные выражения давайте прежде всего в 1 из таких комплексов у нас несколько во 1 вся наша строка подходит по данным регулярное выражение


[01:37 - 01:52] последний символ итак 1 символ и так все символы в промежутке не подходит под описание а в также нас есть префиксы поменьше это да потому что если мы задумаемся


[01:52 - 02:10] данный символ а также подходит последний символ эти символы тоже лежат вот здесь а наш 1 символ также является а но ведь это не все дело в том что наш 5 к еще меньше которой просыпались как симов так же подходит по данным глядя на выражение просто потому что год


[02:10 - 02:25] последний символ а будет последним а происходит в данный диапазон какое из данных префикс вариант функция match правильный ответ самый длинный и потому что по умолчанию данном это символ является жадными давайте посмотрим на составлялся ответ


[02:25 - 02:44] а вот так вот в таком же порядке выбирались по нашей строке и утолить бы удовлетворить наши символы регулярного выражения сначала бы мы взяли в ответ а потому что он удовлетворяет нашим символ а затем благополучно я набрали б а а б и а


[02:44 - 03:01] потому что не подходит по данным это символ то есть мы взяли б а ц а б а зачем вообще бы до конца строки но при этом мы бы хотели взять еще 1 символ а который бы заканчивал нашей губернии выражение это сделать не смогли потому что мы уперлись в конец строки


[03:01 - 03:18] когда вернулись обратно нужно выкинуть последний символ а закончить наши регулярные выражения мы убедились там следующим символом является а добавили бы его в ответ и убедились в том что вся наша строка самом деле подходит по данной регулярное выражение


[03:18 - 03:34] таким образом прижег на подходе мы сначала пытаемся выбрать срок максимальной длины которая нам удовлетворяет а затем проверить а вот то что осталось от нашей строки оно подходит по доставке шаблоны которые нас остался если нет то мы сегодня с конца выкидываем


[03:34 - 03:51] и снова проверяем если снова я то мы снова летим с конца и снова проверили таким образом когда мы пытались сначала добавить все 5 символов по регулярным выражениям нас осталась пустая строка как остаток от нашей строки проверить подходит ли она под шаблон а


[03:51 - 04:07] она не походила поэтому мы избавились от нашего а внутри данного выражения добавили а вот сюда сверили подходит ли данная остаток строки с данным выражением а на самом деле подходит и поэтому мы добавили в ответ


[04:07 - 04:24] однако если бы здесь и здесь оказали например символы это все было бы куда веселее мы сначала пытались добавить сюда все 5 символов потому что не всегда подходит затем сравнить кусту строку с нашим символом бы убедиться в том что он по нему не подходит забрать последний символ отсюда


[04:24 - 04:39] добавить его как последний символ строки сюда затем мы бы сравнили остаток строки то есть строку а с нашим символом в бейсболе что она также не подходит забирает еще 1 символ отсюда сказали бы что остатка нашей строки или строка


[04:39 - 04:53] сравнить бы ее с б и затем которую перед сном новая строка начинается на п 2 и б в ответ вернуть бы вхождения строки а б а б давать увидимся в том что при неотрицательных есть в django запишем следующий шаблон


Step 4 (S-102136) 3.png

[04:53 - 05:11] и пианист на следующую строку убедился в том что мы будем действительно является вся наша строка если мы запустить uninstall toll мы тоже ждем всю строку целиком однако можно попросить вы сказать не жадным способом а наоборот найти наименьшее число вхождений который бы удовлетворил наши регулярные выражения


[05:11 - 05:28] этого можно использовать вопросик после нашего это символа дайте просто поставь здесь вопросительный самой главной выражений после плюсика и тогда мы идем что мы ищем является строка наименьший длинный и более того если мы используем такое регулярное выражение find all


[05:28 - 05:43] вхождения строки таким образом можно использовать вместо символов повторов для нахождения повторной вхождений какого либо символа или группы символов однако стоит всегда быть аккуратным потому что это символ повтора по молчание является жадными