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

  Рет қаралды 55,962

selfedu

selfedu

4 жыл бұрын

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

Пікірлер: 79
@HikkiAdvent
@HikkiAdvent 4 ай бұрын
На самом деле этот канал чуть ли не универсальный справочник для меня. Практические всегда, когда ввожу запрос по питону, на этом канале есть ответ на мой вопрос.
@Aporlev
@Aporlev 2 жыл бұрын
Я посмотрел очень много видео с вашего канала, а к некоторым возвращаюсь пересматривать. Вы даже себе представить не можете, как сильно мне помогают Ваши видеоуроки в обучении. Еще раз, огромное спасибо за то, что вы делаете такой классный контент, а самое главное - это понятные и структурированные плейлисты, я очень мало знаю каналов знаю с такой отличной категоризацией.
@madikhan-only
@madikhan-only 2 жыл бұрын
Ребят, становитесь спонсорами канала! Так вы поддерживаете автора и он выпускает новые уроки 😀. Лайкните коммент в топ
@user-ty1bc5zo3z
@user-ty1bc5zo3z Жыл бұрын
Мед для ушей юных питованов!Спасибо Вам!Всегда все понятно!
@andreybelyaev5703
@andreybelyaev5703 3 жыл бұрын
У вас талант учителя! Спасибо...
@user-uj5oq2vv4f
@user-uj5oq2vv4f Жыл бұрын
Не знаю, ещё не смотрел ваш канал, но случайно нашёл данные уроки, ну что, сказать, Батенька низкий поклон Вам за Ваш Труд 👍Лучший 👍
@Sago186
@Sago186 2 жыл бұрын
за 17 минуть я узнал больше чем из некоторых книг ) СПАСИБО
@tor1kk
@tor1kk 3 жыл бұрын
Наверное самые простые объяснения на ютубе. Спасибо за вашу роботу.
@igorratnik2357
@igorratnik2357 Жыл бұрын
Здравствуйте Сергей. Большущее Вам спасибо. Добрый человек:)) Понятно обьясняете:))
@nadyamoscow2461
@nadyamoscow2461 3 жыл бұрын
Без вас эта тема, скорее всего, показалась бы мне занудной и из-за этого еще более сложной. А с вами живенько так идет. Огромное спасибо!
@AlekseiZverev-zm7ne
@AlekseiZverev-zm7ne Жыл бұрын
Редко это делаю но и я оставлю хороший комментарий потому что более понятного обьяснения я не встречал. Все по делу без лишней магии. Было бы здорово если у вас на степике были так же эти курсы. Я имею в виду по регулярным выражениям, Дзинзе, sql и т.д. Я с удовольствием прошел ваши курсы по синтаксису и ООП.
@Disanax
@Disanax Жыл бұрын
Очень хорошая подача материала и понятное объяснение, спасибо вам большое за такие уроки!
@anaevskiy9685
@anaevskiy9685 2 жыл бұрын
Спасибо за уроки! Смотрел ваш курс по Flask и работе c DOM. Очень хорошие объяснения. Поймет любой у кого есть желание учиться
@ivan100kg
@ivan100kg 3 жыл бұрын
Грамотная речь и внятное объяснение, спасибо!
@nonsence4984
@nonsence4984 2 жыл бұрын
В видео не сказано об этом, но буква Ё и ё не входят в [а-яА-Я], поэтому для русского алфавита нужно делать так [а-ёЁ-Я]
@xuesos
@xuesos 4 жыл бұрын
Очень хорошо объясняли регулярки, спасибо вам
@madikhan-only
@madikhan-only 2 жыл бұрын
Лучший! Дай бог сил на новые уроки 🥰
@Sergiypsm
@Sergiypsm 2 жыл бұрын
Канал - прям кладезь информации!
@l4cky212
@l4cky212 Жыл бұрын
Спасибо огромное за ваши уроки!!! Все понятно и все хорошо объяснено
@howitwasgood
@howitwasgood Жыл бұрын
Спасибо за уроки. Очень качественно. Небольшая ремарка. В интервале, точки его задающие в него не входят, т.ч. лучше диапазон говорить.
@user-ee1lx1pe7n
@user-ee1lx1pe7n 3 жыл бұрын
Спасибо тебе, мужик
@user-pb2wg4zn3l
@user-pb2wg4zn3l 2 жыл бұрын
Очень подробно и доходчиво. Спасибо огромное!
@hack_swan8305
@hack_swan8305 2 жыл бұрын
Спасибо вам за этот канал!
@semimaks
@semimaks Жыл бұрын
Очень хорошо объясняете, спасибо!
@alex_satan
@alex_satan 2 жыл бұрын
Как всегда - Топовая подача!
@pip_install7496
@pip_install7496 Ай бұрын
Не буду перегружать вас информацией, поэтому покажу как записать выражение в шестнадцатеричном формате
@igorb.4917
@igorb.4917 2 жыл бұрын
Шикарный курс!
@user-ky7qh4hu9y
@user-ky7qh4hu9y 3 жыл бұрын
Крутое видео, хорошо объясняет
@who-1880
@who-1880 3 жыл бұрын
Отлично объяснил. Спасибо
@ivanlino3747
@ivanlino3747 2 жыл бұрын
огонь)! спасибо
@doiman6591
@doiman6591 2 жыл бұрын
Большое спасибо за видео! Словно, на паре посидел )
@studian505
@studian505 2 ай бұрын
Спасибо вам!
@user-we3xm4uc4k
@user-we3xm4uc4k 10 ай бұрын
Благодарю!❤
@mega_mango
@mega_mango 2 жыл бұрын
На самом деле, я сам часто на кодварс писал/оптимизировал буквально каждый из показанных методов. Это настолько просто, и там настолько мало возможностей оптимизации/удобства, что у меня создаётся ощущение, что эта либа писалась для тех, кому лень сутки-другие поработать головой и написать её с нуля по потребностям.) А это довольно важно, чтобы хорошо понимать логику и парадигмы программы. Иногда абсолютно любому программеру да придётся возвращаться на средний уровень. Хотя... Это скорее к задачкам уровня си шарп, чем python.)
@armstrong2790
@armstrong2790 Жыл бұрын
Это было сложно, но я в итоге досканально понял этот урок
@Rusia-16
@Rusia-16 3 ай бұрын
Я кстати для VBA и для Excel смотрю урок.
@als-creator
@als-creator Жыл бұрын
добрый день, вы не планируете свои плейлисты оформить в виде курсов на степике? они же готовые уже, надо только код видео вставить, а там курсов бесплатных по фреймворкам, БД и регуляркам нет, для канала тоже плюс будет, больше просмотров
@selfedu_rus
@selfedu_rus Жыл бұрын
Да, делаю параллельно. Это все требует времени!
@user-lh3te1we9p
@user-lh3te1we9p 7 ай бұрын
Идеально
@86Blind
@86Blind 3 жыл бұрын
ВЫСШИЙ ПИЛОТАЖ !!!!!
@7s9n
@7s9n Жыл бұрын
Thanks
@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 да, последний - нет )
@vladislavraskoshinskii9681
@vladislavraskoshinskii9681 3 жыл бұрын
А можете сделать уроки по алгоритмам и структурам данных? Думаю, это будет актуально
@selfedu_rus
@selfedu_rus 3 жыл бұрын
да, возможно еще сделаю
@fakemyexistence
@fakemyexistence 3 жыл бұрын
Привет! Огромное спасибо за этот курс, крайне помогло разобраться с регулярными выражениями. При решении одной из задач возник вопрос, можно ли каким-то образом обозначить в регулярке то, что соседние символы в строке должны различаться. Например, "aabcc" -> "abc". Гуглил на русском и на английском, но так ничего и не нашел. Заранее извиняюсь, если написал что-то не так, ещё раз спасибо.
@selfedu_rus
@selfedu_rus 3 жыл бұрын
не совсем понял вопроса, обычно для этого используют символьные скобки [аА][бБ]ра... будет искать все и с малыми и большими буквами а и б.
@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 Ого. Спасибо за столь развернутый ответ. Вы очень помогли.
@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
@dmitriyshestakoff9751
@dmitriyshestakoff9751 Жыл бұрын
Подскажите, а как прописать символьные классы, если нужно учесть все падежи для слова "еда", т.е. оканчание может быть как однобуквенным, так и двухбуквенным: -а, -у, -ой, -ы? Спасибо
@SayXaNow
@SayXaNow Жыл бұрын
re.findall(r"\bед(([аыеу]\b)|(о[йю]\b))", text, re.IGNORECASE)
@javohirjavohir1685
@javohirjavohir1685 Жыл бұрын
👍
@jamjam3337
@jamjam3337 4 ай бұрын
😎👍
@user-gf6er4ug6g
@user-gf6er4ug6g Жыл бұрын
Народ, никто не в курсах, есть ли какая нибудь функция, чтоб получить строчку из регулярного выражения Т.е. например если я ввел "\s" - он вернет мне пробел, если введу "\d"(случайная цифра) - то он мне будет генерировать каждый раз новую случайную цифру и т.д. Т.е. с помощью re.findall мы ищем в тексте номера кредитных карточек(например) или имейлы А мне нужна функция которая бы генерировала имейлы(т.е. разные тексты согласно введенному шаблону) Есть ли такая функция?
@user-ur3mc6hb5d
@user-ur3mc6hb5d 5 ай бұрын
напиши сам
@user-cm1ri1sn2u
@user-cm1ri1sn2u Жыл бұрын
квадратные скобки внутри символьного класса не воспринимаются как есть, нужен \
@Developer_python_
@Developer_python_ Жыл бұрын
Next(like)
@maksim4334
@maksim4334 4 жыл бұрын
ну лучший! дз бы
@user-tc4fu1nx3i
@user-tc4fu1nx3i 3 жыл бұрын
Сел писать шаблон разбора кривых адресов улиц и проспектов (кто как их пишет- ужас). Спасибо за уроки ) Надеюсь получиться.
@zlataafanaseva8595
@zlataafanaseva8595 2 жыл бұрын
когда у человека есть призвание...
@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 Жыл бұрын
если бога нет, то кто создал этот канал
Whyyyy? 😭 #shorts by Leisi Crazy
00:16
Leisi Crazy
Рет қаралды 20 МЛН
Final muy increíble 😱
00:46
Juan De Dios Pantoja 2
Рет қаралды 22 МЛН
Smart Sigma Kid #funny #sigma #comedy
00:19
CRAZY GREAPA
Рет қаралды 17 МЛН
Children deceived dad #comedy
00:19
yuzvikii_family
Рет қаралды 3,4 МЛН
Указатель на функцию в языке С++
16:54
Оксана Еськова. Основы программирования
Рет қаралды 228
Что пишут на Python? ПЛЮСЫ и МИНУСЫ Python
12:42
Sergey Nemchinskiy
Рет қаралды 569 М.
Принципы SOLID / С Примерами На Python
12:36
PyLounge - программирование на Python и всё о IT
Рет қаралды 12 М.
Основы Регулярных Выражений В Python | Модуль re
18:54
PyLounge - программирование на Python и всё о IT
Рет қаралды 23 М.
Whyyyy? 😭 #shorts by Leisi Crazy
00:16
Leisi Crazy
Рет қаралды 20 МЛН