Тёмный

Регулярные выражения #1: литералы и символьный класс 

selfedu
Подписаться 152 тыс.
Просмотров 56 тыс.
50% 1

Инфо-сайт: proproprogs.ru
Что из себя представляют регулярные выражения в Python. Литералы как простейший шаблон выражения. Символьный класс [] и его стандартные виды: \d, \D, \s, \S, \w, \W.

Опубликовано:

 

20 апр 2020

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 79   
@HikkiAdvent
@HikkiAdvent 4 месяца назад
На самом деле этот канал чуть ли не универсальный справочник для меня. Практические всегда, когда ввожу запрос по питону, на этом канале есть ответ на мой вопрос.
@madikhan-only
@madikhan-only 2 года назад
Ребят, становитесь спонсорами канала! Так вы поддерживаете автора и он выпускает новые уроки 😀. Лайкните коммент в топ
@Aporlev
@Aporlev 2 года назад
Я посмотрел очень много видео с вашего канала, а к некоторым возвращаюсь пересматривать. Вы даже себе представить не можете, как сильно мне помогают Ваши видеоуроки в обучении. Еще раз, огромное спасибо за то, что вы делаете такой классный контент, а самое главное - это понятные и структурированные плейлисты, я очень мало знаю каналов знаю с такой отличной категоризацией.
@user-ty1bc5zo3z
@user-ty1bc5zo3z Год назад
Мед для ушей юных питованов!Спасибо Вам!Всегда все понятно!
@andreybelyaev5703
@andreybelyaev5703 3 года назад
У вас талант учителя! Спасибо...
@user-uj5oq2vv4f
@user-uj5oq2vv4f Год назад
Не знаю, ещё не смотрел ваш канал, но случайно нашёл данные уроки, ну что, сказать, Батенька низкий поклон Вам за Ваш Труд 👍Лучший 👍
@tor1kk
@tor1kk 2 года назад
Наверное самые простые объяснения на ютубе. Спасибо за вашу роботу.
@nadyamoscow2461
@nadyamoscow2461 3 года назад
Без вас эта тема, скорее всего, показалась бы мне занудной и из-за этого еще более сложной. А с вами живенько так идет. Огромное спасибо!
@Sago186
@Sago186 2 года назад
за 17 минуть я узнал больше чем из некоторых книг ) СПАСИБО
@igorratnik2357
@igorratnik2357 Год назад
Здравствуйте Сергей. Большущее Вам спасибо. Добрый человек:)) Понятно обьясняете:))
@nonsence4984
@nonsence4984 2 года назад
В видео не сказано об этом, но буква Ё и ё не входят в [а-яА-Я], поэтому для русского алфавита нужно делать так [а-ёЁ-Я]
@Disanax
@Disanax Год назад
Очень хорошая подача материала и понятное объяснение, спасибо вам большое за такие уроки!
@AlekseiZverev-zm7ne
@AlekseiZverev-zm7ne Год назад
Редко это делаю но и я оставлю хороший комментарий потому что более понятного обьяснения я не встречал. Все по делу без лишней магии. Было бы здорово если у вас на степике были так же эти курсы. Я имею в виду по регулярным выражениям, Дзинзе, sql и т.д. Я с удовольствием прошел ваши курсы по синтаксису и ООП.
@anaevskiy9685
@anaevskiy9685 2 года назад
Спасибо за уроки! Смотрел ваш курс по Flask и работе c DOM. Очень хорошие объяснения. Поймет любой у кого есть желание учиться
@xuesos
@xuesos 4 года назад
Очень хорошо объясняли регулярки, спасибо вам
@ivan100kg
@ivan100kg 3 года назад
Грамотная речь и внятное объяснение, спасибо!
@l4cky212
@l4cky212 Год назад
Спасибо огромное за ваши уроки!!! Все понятно и все хорошо объяснено
@madikhan-only
@madikhan-only 2 года назад
Лучший! Дай бог сил на новые уроки 🥰
@user-ee1lx1pe7n
@user-ee1lx1pe7n 3 года назад
Спасибо тебе, мужик
@Sergiypsm
@Sergiypsm 2 года назад
Канал - прям кладезь информации!
@pip_install7496
@pip_install7496 Месяц назад
Не буду перегружать вас информацией, поэтому покажу как записать выражение в шестнадцатеричном формате
@howitwasgood
@howitwasgood Год назад
Спасибо за уроки. Очень качественно. Небольшая ремарка. В интервале, точки его задающие в него не входят, т.ч. лучше диапазон говорить.
@user-pb2wg4zn3l
@user-pb2wg4zn3l 2 года назад
Очень подробно и доходчиво. Спасибо огромное!
@hack_swan8305
@hack_swan8305 2 года назад
Спасибо вам за этот канал!
@alex_satan
@alex_satan 2 года назад
Как всегда - Топовая подача!
@semimaks
@semimaks Год назад
Очень хорошо объясняете, спасибо!
@igorb.4917
@igorb.4917 2 года назад
Шикарный курс!
@mega_mango
@mega_mango 2 года назад
На самом деле, я сам часто на кодварс писал/оптимизировал буквально каждый из показанных методов. Это настолько просто, и там настолько мало возможностей оптимизации/удобства, что у меня создаётся ощущение, что эта либа писалась для тех, кому лень сутки-другие поработать головой и написать её с нуля по потребностям.) А это довольно важно, чтобы хорошо понимать логику и парадигмы программы. Иногда абсолютно любому программеру да придётся возвращаться на средний уровень. Хотя... Это скорее к задачкам уровня си шарп, чем python.)
@user-ky7qh4hu9y
@user-ky7qh4hu9y 3 года назад
Крутое видео, хорошо объясняет
@Rusia-16
@Rusia-16 3 месяца назад
Я кстати для VBA и для Excel смотрю урок.
@who-1880
@who-1880 3 года назад
Отлично объяснил. Спасибо
@armstrong2790
@armstrong2790 Год назад
Это было сложно, но я в итоге досканально понял этот урок
@ivanlino3747
@ivanlino3747 2 года назад
огонь)! спасибо
@doiman6591
@doiman6591 2 года назад
Большое спасибо за видео! Словно, на паре посидел )
@studian505
@studian505 2 месяца назад
Спасибо вам!
@user-we3xm4uc4k
@user-we3xm4uc4k 10 месяцев назад
Благодарю!❤
@86Blind
@86Blind 3 года назад
ВЫСШИЙ ПИЛОТАЖ !!!!!
@7s9n
@7s9n Год назад
Thanks
@als-creator
@als-creator Год назад
добрый день, вы не планируете свои плейлисты оформить в виде курсов на степике? они же готовые уже, надо только код видео вставить, а там курсов бесплатных по фреймворкам, БД и регуляркам нет, для канала тоже плюс будет, больше просмотров
@selfedu_rus
@selfedu_rus Год назад
Да, делаю параллельно. Это все требует времени!
@user-lh3te1we9p
@user-lh3te1we9p 7 месяцев назад
Идеально
@vladislavraskoshinskii9681
@vladislavraskoshinskii9681 3 года назад
А можете сделать уроки по алгоритмам и структурам данных? Думаю, это будет актуально
@selfedu_rus
@selfedu_rus 3 года назад
да, возможно еще сделаю
@fakemyexistence
@fakemyexistence 3 года назад
Привет! Огромное спасибо за этот курс, крайне помогло разобраться с регулярными выражениями. При решении одной из задач возник вопрос, можно ли каким-то образом обозначить в регулярке то, что соседние символы в строке должны различаться. Например, "aabcc" -> "abc". Гуглил на русском и на английском, но так ничего и не нашел. Заранее извиняюсь, если написал что-то не так, ещё раз спасибо.
@selfedu_rus
@selfedu_rus 3 года назад
не совсем понял вопроса, обычно для этого используют символьные скобки [аА][бБ]ра... будет искать все и с малыми и большими буквами а и б.
@podgorniy.r
@podgorniy.r 2 года назад
Отличный видеоурок, благодарю! Дополнительно пришлось обратиться к Вашему видеоуроку о экранировании и raw-строках, так как не мог понять почему в данном примере используется \\b Как я понял, то в данном случае было необходимо "отделить" специальный символ строки \b (эмуляция клавиши BackSpace), от спец. символа регулярного выражения \b (граница слова)
@selfedu_rus
@selfedu_rus 2 года назад
нам нужно, чтобы в строке было 2 символа \ и b, а если просто написать \b, то, как вы правильно отметили, это BackSpace.
@podgorniy.r
@podgorniy.r 2 года назад
@@selfedu_rus Сергей, благодарю за ответ :) Подскажите еще, пожалуйста, 'служебный символ', 'спец. символ', 'метасимвол' это все взаимозаменяемые понятия?
@selfedu_rus
@selfedu_rus 2 года назад
@@podgorniy.r первые 2 да, последний - нет )
@jamjam3337
@jamjam3337 4 месяца назад
😎👍
@Developer_python_
@Developer_python_ Год назад
Next(like)
@user-gf6er4ug6g
@user-gf6er4ug6g Год назад
Народ, никто не в курсах, есть ли какая нибудь функция, чтоб получить строчку из регулярного выражения Т.е. например если я ввел "\s" - он вернет мне пробел, если введу "\d"(случайная цифра) - то он мне будет генерировать каждый раз новую случайную цифру и т.д. Т.е. с помощью re.findall мы ищем в тексте номера кредитных карточек(например) или имейлы А мне нужна функция которая бы генерировала имейлы(т.е. разные тексты согласно введенному шаблону) Есть ли такая функция?
@user-ur3mc6hb5d
@user-ur3mc6hb5d 5 месяцев назад
напиши сам
@javohirjavohir1685
@javohirjavohir1685 Год назад
👍
@user-cm1ri1sn2u
@user-cm1ri1sn2u Год назад
квадратные скобки внутри символьного класса не воспринимаются как есть, нужен \
@dmitriyshestakoff9751
@dmitriyshestakoff9751 Год назад
Подскажите, а как прописать символьные классы, если нужно учесть все падежи для слова "еда", т.е. оканчание может быть как однобуквенным, так и двухбуквенным: -а, -у, -ой, -ы? Спасибо
@SayXaNow
@SayXaNow Год назад
re.findall(r"\bед(([аыеу]\b)|(о[йю]\b))", text, re.IGNORECASE)
@figura-a
@figura-a 2 года назад
Здравствуйте. Подскажите пожалуйста как c помощью регулярного выражением выбрать только консоль лог и скобки без содержимого в нем? До применения регулярного выражения console.log('regx', bottom, 123-6 -15f () false || true), после применения регулярного выражения console.log()
@selfedu_rus
@selfedu_rus 2 года назад
Эту конкретику можно в телеграм-канале спросить: t.me/python_selfedu
@hitakeri
@hitakeri Год назад
Спасибо за урок !!! хотел понтануться, по среди урока, что если прописать [0-я] будет аналогично как я выяснил потом \w =)
@SayXaNow
@SayXaNow Год назад
Хорошо что не понтанулся, а то прошаренный учитель задал бы тебе детское упражнение: найти все слова и числа (или просто все буквы и цифры) в невинном предложении "Шел ёжик 100 км по шоссе." сначала с помощью диапазона [0-я], а потом с использованием \w и попросил бы пояснить за аналогию, увидев разные результаты.
@user-lf7dp7nf8q
@user-lf7dp7nf8q Год назад
@@SayXaNow Я попробовала. Пропала "ё". Пожалуйста, можете объяснить, почему вывод разный?
@SayXaNow
@SayXaNow Год назад
@@user-lf7dp7nf8q Буква «ё» не включается в общий диапазон букв кириллицы [а-я], т.к. имеет код больший чем буква «я». А вот в диапазон \w включается все, что помечено в юникоде как буква или цифра - это очень большой набор символов, выходящий за пределы [0-я]. Чтобы понять насколько грубейшей ошибкой будет использование диапазонов подобных [0-я] без понимания, что входит в этот диапазон, запустите простенький код: s = "" for char_code in range(ord("0"), ord("я")+1): s += chr(char_code) print(s) и вы увидите сколько символов «мусора» в этом диапазоне, не являющимися ни буквой и ни цифрой, но подходящий под этот диапазон, а поэтому будет расценен регулярным выражением как успешное совпадение. Поэтому пара советов для начинающих: - используйте только короткие «проверенные» диапазоны и объединяйте их: Правильно: [0-9], [a-z], [0-9A-Za-z] и т.д. (для букв кириллицы не забываем добавлять ё - [а-яА-ЯёЁ]) Неверно: [A-z], [0-z] (в диапазон попадет мусор в виде символов [\]^` и прочих) - не используйте \w, если нужно искать только буквы/слова конкретного алфавита, т.к. как уже было сказано выше, набор \w захватывает большое количество дополнительных символов за пределами алфавита, с которым будем работать. Вместо \w используйте короткие диапазоны из этого алфавита.
@user-lf7dp7nf8q
@user-lf7dp7nf8q Год назад
@@SayXaNow Ого. Спасибо за столь развернутый ответ. Вы очень помогли.
@zlataafanaseva8595
@zlataafanaseva8595 2 года назад
когда у человека есть призвание...
@maksim4334
@maksim4334 4 года назад
ну лучший! дз бы
@user-tc4fu1nx3i
@user-tc4fu1nx3i 3 года назад
Сел писать шаблон разбора кривых адресов улиц и проспектов (кто как их пишет- ужас). Спасибо за уроки ) Надеюсь получиться.
@Kirill0094
@Kirill0094 3 года назад
Сказали что все специальные символы(кроме табуляции и переноса строки) внутри символьного класса не воспринимаются. А как же [^0-9] ?
@selfedu_rus
@selfedu_rus 3 года назад
здесь ^ это управляющий символ, означающий инверсию, то есть, выбрать любой не цифровой символ из строки
@user-li5ls7gu5z
@user-li5ls7gu5z 4 года назад
Про букву ёЁ забыл сказать
@user-li5ls7gu5z
@user-li5ls7gu5z 4 года назад
По-моему проще использовать ^ и $ для начала и конца строки
@selfedu_rus
@selfedu_rus 4 года назад
где именно? вроде примеры не подразумевают начало и конец строки. О символах ^ и $ речь пойдет на следующих занятиях
@user-li5ls7gu5z
@user-li5ls7gu5z 4 года назад
@@selfedu_rus для поиска вхождений
@selfedu_rus
@selfedu_rus 4 года назад
@@user-li5ls7gu5z все равно не понял, где проще? (лучше с указанием момента времени на видео)
@user-li5ls7gu5z
@user-li5ls7gu5z 4 года назад
@@selfedu_rus там, где \\b
@selfedu_rus
@selfedu_rus 4 года назад
@@user-li5ls7gu5z а, не это разные вещи: граница слова и начало-конец строки - не одно и то же
@willgoonandon3050
@willgoonandon3050 Год назад
Почему Ява то? Ява, это мотоцикл. А язык программирования джава!
@niktonikak1820
@niktonikak1820 Год назад
если бога нет, то кто создал этот канал
Далее
Eddie Hall VS Neffati Brothers
00:11
Просмотров 1,6 млн
Regular Expressions in Python
18:58
Просмотров 72 тыс.