Решил заняться личным блогом, который будет посвящён Программированию на Python.
Завтра решу с определением где брать стартовую и без говна информацию, посвященную такому языку программирования как Python. Надеюсь найду свою аудиторию с которой буду взаимодействовать.
Пишут что база Python изучается за месяц в среднем. Посмотрим сколько на это уйдет у меня, раньше увлекался данной темой, но появлялись проблемы которые приходилось решать, и это отвлекало. Надеюсь такого больше не будет.
Вот такое замечательное сообщение с иллюстрацией в домовом чате. Отличившиеся, наверное кучу времени угробили на то, чтобы запихать субъекта в мусоропровод. Но он уходить не хотел!
Птичка, цветочек, прямые линии. Почти неотличимо от обычного регекса)
Регулярные выражения, можно сказать, представляют собой своего рода язык запросов, благодаря которому можно выполнять следующие ключевые задачи:
Валидировать строки
Искать нужные подстроки в строках
Извлекать необходимые данные
Regex не ограничивается только языком Java.
Этот язык используется повсеместно в области информационных технологий. Зная его, вы можете применять свои навыки в множестве контекстов. Поддержка регулярных выражений присутствует в большинстве языков программирования, и множество программ полагаются на регулярные запросы. В какой-то мере regex является стандартом, который полезно знать каждому.
Regex часто кажется сложным для понимания, особенно новичкам.
К сожалению, регулярные выражения, особенно если они написаны неоптимально, могут требовать много усилий для разбора конкретного выражения.
Существует множество решений для упрощения написания и тестирования регулярных выражений.
К счастью, существуют готовые онлайн-решения, которые существенно облегчают процесс понимания. Например, regex101.com - сервис, который мы будем использовать далее. Вот пример того, как мы валидируем формат даты:
Можете пока не вдаваться в подробности. Ниже я объясню как им пользоваться.
Самые основы. Ищем котов.
Давайте начнем с самых основ. Допустим, у нас есть задача: мы хотим найти все упоминания слова 'cat' в строке 'catdogbananacat'. Выражение для этой задачи будет очень простым: 'cat'. Именно так, просто слово.
Теперь давайте посмотрим, что мы найдем, используя утилиту regex101.com:
Мы нашли двух котов. (Заметьте первый кот подсвечен голубым, второй синим - тк найдено 2 упоминания или подстроки в строке).
Символ начала строки ^
Теперь найдем только котов которые стоят в самом начале строки а не в середине или конце, для этого воспользуемся симоволом ^ (циркумфлекс символ или символ "домика" или "крышечки" или caret на английском).
Среди 3х вариантов было найдено два кота которые начинают строку.
И так среди вариантов мы нашли 2 котов которые начинают строку.
Символ конца строки $
Также, аналогично предыдущему, давайте найдем только те варианты, где 'cat' будет заканчивать строку. Для этого воспользуемся символом $. Итак, наше выражение будет cat$.
Найден лишь один который который заканчивает строку.
Усложняем задачу, находим двух котов между которыми есть цифра. Символ числа \d
Теперь усложним задачу и найдем двух котов, между которыми есть цифра. Для этого мы используем \d (от слова 'digit' - цифра). Итак, искомое выражение будет 'cat\dcat'.
Как мы видим лишь один случай найден. Именно один варинт ровно 1 числа между двумя котами.
Знакомимся с \w и последовательностью +
Теперь предположим, что мы ищем двух котов, между которыми может быть несколько цифр, букв или подчеркиваний. Для этого воспользуемся \w, а затем добавим символ +, подсказыва регексу, что символов может быть больше одного. Конечное выражение: cat\w+cat
красным подчеркнуто, чтобы для удобства просмотра)
Перечисляем допустимые символы. Символ [ ]
Теперь сузим поиск и предположим, что мы ищем пару двух котов, между которыми есть лишь буквы a, b, c (либо их вариации). Для перечисления используем квадратные скобки: [abc], и добавим +, чтобы указать, что букв может быть несколько.
первые три вариана не подходя потому что: в первом есть цифра, во втором дефис, в третьем подчеркивание.
Указываем минимальную и максимальную длину. Символ { }
Теперь сузим поиск еще сильнее, предположим что в сумме букв a,b,c между котами может быть не менее 1 и не более 5 символов. Для этого воспользуемся фигурными скобками и получим выражение cat[abc]{1,5}cat
Добавляем вариации. Логическое ИЛИ. Символ |
Теперь допустим мы ищем всех котов между которыми может быть:
Уже знакомый вариант с a,b,c которых не более 5 и не менее 1
Либо слово dog
Для этого воспользуемся логическим выражением или используя | символ. Также чтобы указать что между двумя котами может быть лишь 1 вариант нам нужно использовать круглые скобки чтобы объединить их. Круглые скобки играют еще и другие роли (об этом будет позже). Итого наше выражение cat([abc]{1,5}|dog)cat
К старым результатам добавился catdogcat что и было ожидаемо.
Резюмируя первую часть статьи.
И так мы хорошо поработали, теперь мы научились работать с такими иероглифами как:
^ начало строки, $ конец строки
+ несколько последовательных символов (неограниченное количество)
\d любое число 0-9
\w любой алфавитный, цифровой символ и подчеркивание
[ ] - перечисление допустимх символов
{ } - указание минимальной, максимальной длины повторений
| - логическое ИЛИ которое для большинства случаев требует наличие скобок ( )
Что дальше?
Итак, мы познакомились с довольно простыми вещами, которые не слишком иллюстрируют всю мощь регулярных выражений. В следующих частях мы узнаем еще больше магических символов и применим их для первых промышленных задач.
Хочу порекомендовать этот малоизвестный канал про историю содержит множество интересных исторических фотографий, видео и фактов. Канал обновляется каждый день, поэтому вы всегда будете в курсе действительно удивительных фактов из прошлого.
Больше интесного подобного контента про фильмы, сайты, телеграм-каналы и т.д. в моём ТГ. Канал начинающий, поэтому там ещё нет аудитории. Буду рад вас видеть на моём канале.
Привет всем! Сегодня я делюсь захватывающим открытием - Notcoin, свежим мемкоином в системе TON! Криптовалютное начало года прозвучало громко прямо в нашей любимой Телеге.
🌟 Что это за творение Notcoin? Этот кликер-гейм, разработанный на платформе Telegram, представляет собой шаг вперед в концепции Web3 и новый этап в системе TON, которая, кстати, в настоящее время является самой быстрой блокчейн-системой в мире по обработке транзакций. Более 650 000 человек приняли участие в бета-тесте, и в новогоднюю ночь состоялся полноценный релиз.
TON сегодня это революция в технологии блокчейна, может обрабатывать свыше 100 000 транзакций в секунду. Но самое важное здесь — интеграция всей системы непосредственно в Telegram. А Notcoin похоже станет собственным мемкоином в экосистеме TON, так что интересно посмотреть что будет дальше.
🎮 Как играть?
Регистрируйтесь по ссылке, чтобы получить стартовые монеты.
Присоединяйтесь к отряду (или как его называют в игре - squad). Notcoin army frens - наткнулся на них, так как они развивают мини-сообщество и помогли мне с бустами на старте. Но уже сейчас многие каналы создают свои сквады.
Кликайте кнопку, собирайте монеты, не забывайте тыкать на ракеты, они дают временный множитель на клики!
Выполняйте задания, получайте бонусы за активность.
Делайте апгрейды, увеличивайте получение монет и готовьтесь к дропу!
Notcoin только что вышел, и, конечно, есть некоторые моменты, над которыми работают разработчики. Чтобы максимально оптимизировать свой опыт, вот несколько советов:
Не забывайте про 10-секундный интервал после получения бонусов, чтобы избежать возможных проблем с их получением.
Автоматизируйте процесс с помощью бустов - делайте апгрейды, я рекомендую купить Auto Clicker, чтобы он копил монеты за вас.
Основатели Notcoin утверждают, что никто не знает, когда и будет ли выпущен токен. И в этом вся изюминка игры! Но ходят слухи, что будет разыграно 10 миллионов долларов, но это уже совсем другая история. Я думаю, это может быть вирусным прогревом к будущей громкой новости от команды TON. Будем следить! А я пока пойду покликаю немного монеток и успокою нервы перед трудовыми буднями. С Новым Годом и удачи в игре! 🚀🎉