#регулярные_выражения — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #регулярные_выражения, aggregated by home.social.
-
Почему JavaScript-функция RegExp.escape() экранирует латинские буквы, пробелы и ухо луны
Случайно увидел результат работы функции RegExp.escape() и был удивлен, потому что она заэкранировала пробелы, все спецсимволы, а также цифры и латинские буквы в начале строки. До появления RegExp.escape() (а она стала доступна в популярных браузерах лишь в 2025 году) я, как и многие другие, писал аналогичную функцию сам, но без экранировки вышеперечисленных символов. Получается, что я ошибался, и нужно бросать все дела, рыться в старых исходниках и переписывать функцию? И да, и нет. /^Читать\s+далее$/
-
Кен Томпсон, который в одиночку написал первые версии Unix
Кен Томпсон с Деннисом Ритчи являются соавторами Unix — операционной системы, которая лежит в фундаменте современной ИТ-индустрии. Важно заметить, что он начал работать над Unix раньше Ритчи. По словам Томпсона , он в одиночку написал первые версии Unix и делал в Bell Labs предшественников Unix и С — ОС Multics , языки Bon и B — ещё до того, как туда пришёл юный аспирант Деннис, помог всё улучшить и разработал язык С. Но вообще их карьера очень похожа: обоих после вуза направили в Bell Labs, где они трудились почти всю жизнь. Томпсон неоднократно входил в топ-10 программистов всех времён и тому подобные рейтинги . Кроме Unix, в его послужном списке операционная система Plan 9 , язык программирования Go и несколько выдающихся программ.
https://habr.com/ru/companies/ruvds/articles/1000336/
#Plan_9 #Go #величайшие_программисты #кен_томпсон #Unix #Multics #UTF8 #регулярные_выражения #BSD #ruvds_статьи
-
Кен Томпсон, который в одиночку написал первые версии Unix
Кен Томпсон с Деннисом Ритчи являются соавторами Unix — операционной системы, которая лежит в фундаменте современной ИТ-индустрии. Важно заметить, что он начал работать над Unix раньше Ритчи. По словам Томпсона , он в одиночку написал первые версии Unix и делал в Bell Labs предшественников Unix и С — ОС Multics , языки Bon и B — ещё до того, как туда пришёл юный аспирант Деннис, помог всё улучшить и разработал язык С. Но вообще их карьера очень похожа: обоих после вуза направили в Bell Labs, где они трудились почти всю жизнь. Томпсон неоднократно входил в топ-10 программистов всех времён и тому подобные рейтинги . Кроме Unix, в его послужном списке операционная система Plan 9 , язык программирования Go и несколько выдающихся программ.
https://habr.com/ru/companies/ruvds/articles/1000336/
#Plan_9 #Go #величайшие_программисты #кен_томпсон #Unix #Multics #UTF8 #регулярные_выражения #BSD #ruvds_статьи
-
Кен Томпсон, который в одиночку написал первые версии Unix
Кен Томпсон с Деннисом Ритчи являются соавторами Unix — операционной системы, которая лежит в фундаменте современной ИТ-индустрии. Важно заметить, что он начал работать над Unix раньше Ритчи. По словам Томпсона , он в одиночку написал первые версии Unix и делал в Bell Labs предшественников Unix и С — ОС Multics , языки Bon и B — ещё до того, как туда пришёл юный аспирант Деннис, помог всё улучшить и разработал язык С. Но вообще их карьера очень похожа: обоих после вуза направили в Bell Labs, где они трудились почти всю жизнь. Томпсон неоднократно входил в топ-10 программистов всех времён и тому подобные рейтинги . Кроме Unix, в его послужном списке операционная система Plan 9 , язык программирования Go и несколько выдающихся программ.
https://habr.com/ru/companies/ruvds/articles/1000336/
#Plan_9 #Go #величайшие_программисты #кен_томпсон #Unix #Multics #UTF8 #регулярные_выражения #BSD #ruvds_статьи
-
Кен Томпсон, который в одиночку написал первые версии Unix
Кен Томпсон с Деннисом Ритчи являются соавторами Unix — операционной системы, которая лежит в фундаменте современной ИТ-индустрии. Важно заметить, что он начал работать над Unix раньше Ритчи. По словам Томпсона , он в одиночку написал первые версии Unix и делал в Bell Labs предшественников Unix и С — ОС Multics , языки Bon и B — ещё до того, как туда пришёл юный аспирант Деннис, помог всё улучшить и разработал язык С. Но вообще их карьера очень похожа: обоих после вуза направили в Bell Labs, где они трудились почти всю жизнь. Томпсон неоднократно входил в топ-10 программистов всех времён и тому подобные рейтинги . Кроме Unix, в его послужном списке операционная система Plan 9 , язык программирования Go и несколько выдающихся программ.
https://habr.com/ru/companies/ruvds/articles/1000336/
#Plan_9 #Go #величайшие_программисты #кен_томпсон #Unix #Multics #UTF8 #регулярные_выражения #BSD #ruvds_статьи
-
«Мы не дообучаем нейросеть, мы дообучаем скрипт»: Как Mac Mini и локальная LLM писали для нас Regex
Привет! Меня зовут Максим Морозов, я AI Project Manager в Битрикс24. В предыдущей статье я рассказывал о локальных нейросетях как безопасной и экономичной альтернативе облачным API. Сегодня — практический кейс, где мы применили этот подход в реальном проекте. Главная идея этой работы: вместо дообучения (Fine-Tuning) нейросети на своих данных — что долго, дорого и требует поддержки датасета — мы используем штатную модель без дополнительного обучения. Модель генерирует regex, а скрипт сохраняет эти правила и использует их автономно. Я покажу архитектуру системы, где локальная LLM генерирует регулярные выражения для парсинга логов, экономя сотни часов ручной отладки. Все вычисления происходят внутри периметра компании, без отправки данных в облако.
https://habr.com/ru/companies/bitrix/articles/992708/
#regex #регулярные_выражения #искусственный_интеллект #битрикс24 #llm
-
Разбор задачи «Regular Expression Matching»
В этой статье я разберу решение задачи сопоставления строки шаблону с регулярным выражением, которая предлагается сайтом LeetCode под номером 10.
https://habr.com/ru/articles/966134/
#динамическое_программирование #регулярные_выражения #разбор_задач
-
Регулярные выражения в плагине «Аналитика» для Р7 офис
Если обычный человек посмотрит на исходный код программы, написанный на популярных языках вроде JavaScript или Python, то по контексту и знакомым словам он сможет понять, что происходит. Но регулярные выражения со стороны похожи на случайный набор символов – будто кошка прошла по клавиатуре. В этом случае даже код на Ассемблере выглядит более читаемым. Мы в « ЛАНИТ-Интеграции » не понаслышке знаем, как бывает сложно собрать воедино данные из нескольких источников, привести их к общему виду и создать на их основе единую таблицу с полным отчетом. Для решения этой задачи был создан плагин «Аналитика» для Р7-офис как инструмент автоматизации для выгрузки и обработки данных. В этой статье в блоге ЛАНИТ хочу рассказать вам о новых возможностях поиска данных в плагине в сочетании с функционалом RegExp (они же регулярные выражения или просто регулярки).
https://habr.com/ru/companies/lanit/articles/960568/
#ланит #ланитинтеграция #regex #regexp #регулярки #регулярные_выражения
-
Регулярные выражения в плагине «Аналитика» для Р7 офис
Если обычный человек посмотрит на исходный код программы, написанный на популярных языках вроде JavaScript или Python, то по контексту и знакомым словам он сможет понять, что происходит. Но регулярные выражения со стороны похожи на случайный набор символов – будто кошка прошла по клавиатуре. В этом случае даже код на Ассемблере выглядит более читаемым. Мы в « ЛАНИТ-Интеграции » не понаслышке знаем, как бывает сложно собрать воедино данные из нескольких источников, привести их к общему виду и создать на их основе единую таблицу с полным отчетом. Для решения этой задачи был создан плагин «Аналитика» для Р7-офис как инструмент автоматизации для выгрузки и обработки данных. В этой статье в блоге ЛАНИТ хочу рассказать вам о новых возможностях поиска данных в плагине в сочетании с функционалом RegExp (они же регулярные выражения или просто регулярки).
https://habr.com/ru/companies/lanit/articles/960568/
#ланит #ланитинтеграция #regex #regexp #регулярки #регулярные_выражения
-
Регулярные выражения в плагине «Аналитика» для Р7 офис
Если обычный человек посмотрит на исходный код программы, написанный на популярных языках вроде JavaScript или Python, то по контексту и знакомым словам он сможет понять, что происходит. Но регулярные выражения со стороны похожи на случайный набор символов – будто кошка прошла по клавиатуре. В этом случае даже код на Ассемблере выглядит более читаемым. Мы в « ЛАНИТ-Интеграции » не понаслышке знаем, как бывает сложно собрать воедино данные из нескольких источников, привести их к общему виду и создать на их основе единую таблицу с полным отчетом. Для решения этой задачи был создан плагин «Аналитика» для Р7-офис как инструмент автоматизации для выгрузки и обработки данных. В этой статье в блоге ЛАНИТ хочу рассказать вам о новых возможностях поиска данных в плагине в сочетании с функционалом RegExp (они же регулярные выражения или просто регулярки).
https://habr.com/ru/companies/lanit/articles/960568/
#ланит #ланитинтеграция #regex #regexp #регулярки #регулярные_выражения
-
Регулярные выражения в плагине «Аналитика» для Р7 офис
Если обычный человек посмотрит на исходный код программы, написанный на популярных языках вроде JavaScript или Python, то по контексту и знакомым словам он сможет понять, что происходит. Но регулярные выражения со стороны похожи на случайный набор символов – будто кошка прошла по клавиатуре. В этом случае даже код на Ассемблере выглядит более читаемым. Мы в « ЛАНИТ-Интеграции » не понаслышке знаем, как бывает сложно собрать воедино данные из нескольких источников, привести их к общему виду и создать на их основе единую таблицу с полным отчетом. Для решения этой задачи был создан плагин «Аналитика» для Р7-офис как инструмент автоматизации для выгрузки и обработки данных. В этой статье в блоге ЛАНИТ хочу рассказать вам о новых возможностях поиска данных в плагине в сочетании с функционалом RegExp (они же регулярные выражения или просто регулярки).
https://habr.com/ru/companies/lanit/articles/960568/
#ланит #ланитинтеграция #regex #regexp #регулярки #регулярные_выражения
-
Регулярная катастрофа и как её избежать. Подход к регулярным выражениям
Салют, Хабр! Я Алексей, занимаюсь ассистентом в SberDevices. В свободное время занимаюсь дискретной математикой, поэтому обожаю регулярные выражения — они по сути довольно близки к предмету моих интересов и делают код удобноваримее. В этой статье хочу рассказать о математике регулярных выражений и их интересной особенности, которая возникает внезапно
https://habr.com/ru/companies/sberdevices/articles/954296/
#python #регулярные_выражения #redos #backtracking #fastapi #НКА #ДКА #дискретная_математика #дебаг
-
Утилита Find и регулярные выражения
Про find можно писать много и долго, а если еще перевести мануал и снабдить каждый параметр развернутыми примерами, то материала получится на целую книгу. Пока эту книгу никто не написал, я решил рассказать о некоторых особенностях работы утилиты с регулярками и другими функциями. Регулярки освоить нетрудно. Буквально за пару часов можно получить почти средний уровень владения и научиться читать и писать выражения для поиска ip-адресов, e-mail, html-тегов, телефонных номеров, дат и прочих несложных конструкций. Я думаю, все это вам знакомо, но на всякий случай в конце статьи я добавил несколько ссылок для изучения. Я уже прошел «курс молодого бойца» по регуляркам, написал свою, вставил в find, и она не сработала. Но пойдем по порядку.
https://habr.com/ru/companies/lanit/articles/945774/
#программирование #ланит #регулярные_выражения #regex #java #квантификаторы #регулярки
-
Утилита Find и регулярные выражения
Про find можно писать много и долго, а если еще перевести мануал и снабдить каждый параметр развернутыми примерами, то материала получится на целую книгу. Пока эту книгу никто не написал, я решил рассказать о некоторых особенностях работы утилиты с регулярками и другими функциями. Регулярки освоить нетрудно. Буквально за пару часов можно получить почти средний уровень владения и научиться читать и писать выражения для поиска ip-адресов, e-mail, html-тегов, телефонных номеров, дат и прочих несложных конструкций. Я думаю, все это вам знакомо, но на всякий случай в конце статьи я добавил несколько ссылок для изучения. Я уже прошел «курс молодого бойца» по регуляркам, написал свою, вставил в find, и она не сработала. Но пойдем по порядку.
https://habr.com/ru/companies/lanit/articles/945774/
#программирование #ланит #регулярные_выражения #regex #java #квантификаторы #регулярки
-
Утилита Find и регулярные выражения
Про find можно писать много и долго, а если еще перевести мануал и снабдить каждый параметр развернутыми примерами, то материала получится на целую книгу. Пока эту книгу никто не написал, я решил рассказать о некоторых особенностях работы утилиты с регулярками и другими функциями. Регулярки освоить нетрудно. Буквально за пару часов можно получить почти средний уровень владения и научиться читать и писать выражения для поиска ip-адресов, e-mail, html-тегов, телефонных номеров, дат и прочих несложных конструкций. Я думаю, все это вам знакомо, но на всякий случай в конце статьи я добавил несколько ссылок для изучения. Я уже прошел «курс молодого бойца» по регуляркам, написал свою, вставил в find, и она не сработала. Но пойдем по порядку.
https://habr.com/ru/companies/lanit/articles/945774/
#программирование #ланит #регулярные_выражения #regex #java #квантификаторы #регулярки
-
Утилита Find и регулярные выражения
Про find можно писать много и долго, а если еще перевести мануал и снабдить каждый параметр развернутыми примерами, то материала получится на целую книгу. Пока эту книгу никто не написал, я решил рассказать о некоторых особенностях работы утилиты с регулярками и другими функциями. Регулярки освоить нетрудно. Буквально за пару часов можно получить почти средний уровень владения и научиться читать и писать выражения для поиска ip-адресов, e-mail, html-тегов, телефонных номеров, дат и прочих несложных конструкций. Я думаю, все это вам знакомо, но на всякий случай в конце статьи я добавил несколько ссылок для изучения. Я уже прошел «курс молодого бойца» по регуляркам, написал свою, вставил в find, и она не сработала. Но пойдем по порядку.
https://habr.com/ru/companies/lanit/articles/945774/
#программирование #ланит #регулярные_выражения #regex #java #квантификаторы #регулярки
-
Регулярные выражения в PostgreSQL
Регулярные выражения (или regex ) — это особые текстовые строки, используемые для описания поискового шаблона. В PostgreSQL regex становится незаменимым инструментом, особенно при работе с большими объёмами неструктурированных строковых данных. Возможно, у кого‑то есть вопрос: «А для чего нам регулярные выражения в БД?» И мы вам ответим: Регулярные выражения (regex) позволяют описать сложные текстовые шаблоны компактно и гибко.
https://habr.com/ru/articles/946274/
#регулярные_выражения #работа_с_postgresql #postgresql #субд #для_начинающих #для_новичков #posix
-
Регулярные выражения в PostgreSQL
Регулярные выражения (или regex ) — это особые текстовые строки, используемые для описания поискового шаблона. В PostgreSQL regex становится незаменимым инструментом, особенно при работе с большими объёмами неструктурированных строковых данных. Возможно, у кого‑то есть вопрос: «А для чего нам регулярные выражения в БД?» И мы вам ответим: Регулярные выражения (regex) позволяют описать сложные текстовые шаблоны компактно и гибко.
https://habr.com/ru/articles/946274/
#регулярные_выражения #работа_с_postgresql #postgresql #субд #для_начинающих #для_новичков #posix
-
Регулярные выражения в PostgreSQL
Регулярные выражения (или regex ) — это особые текстовые строки, используемые для описания поискового шаблона. В PostgreSQL regex становится незаменимым инструментом, особенно при работе с большими объёмами неструктурированных строковых данных. Возможно, у кого‑то есть вопрос: «А для чего нам регулярные выражения в БД?» И мы вам ответим: Регулярные выражения (regex) позволяют описать сложные текстовые шаблоны компактно и гибко.
https://habr.com/ru/articles/946274/
#регулярные_выражения #работа_с_postgresql #postgresql #субд #для_начинающих #для_новичков #posix
-
Регулярные выражения в PostgreSQL
Регулярные выражения (или regex ) — это особые текстовые строки, используемые для описания поискового шаблона. В PostgreSQL regex становится незаменимым инструментом, особенно при работе с большими объёмами неструктурированных строковых данных. Возможно, у кого‑то есть вопрос: «А для чего нам регулярные выражения в БД?» И мы вам ответим: Регулярные выражения (regex) позволяют описать сложные текстовые шаблоны компактно и гибко.
https://habr.com/ru/articles/946274/
#регулярные_выражения #работа_с_postgresql #postgresql #субд #для_начинающих #для_новичков #posix
-
RegExp с флагом /v: наборы, пересечения и юникод-свойства
Привет, Хабр! Сегодня рассмотрим флаг регулярных выражений v в JavaScript. Флаг поддержан в современных движках и Node 20+, а для старых окружений есть транспиляция через Babel. Начнём с краткой ориентации где это уже работает и почему синтаксис отличается, а потом пойдём в практику.
https://habr.com/ru/companies/otus/articles/941054/
#js #регулярные_выражения #флаг_v #пересечение_классов #валидация_форм #вычитание_классов #нормализация_ввода #javascript
-
[Перевод] Радость создания хобби-программ
Мне очень нравится знаменитая цитата Ричарда Фейнмана: «То, что я не могу создать, я не понимаю» Она кажется мне великолепной, и я считаю, что она справедлива для многих областей знания (если немного творчески подойти к значению слова «создать»). Наверно, этому принципу я обязан за всё, в чём по-настоящему хорош. Кто-то скажет, что стоит стараться не изобретать велосипед, но они ошибаются: нужно изобретать собственный велосипед, потому что так вы узнаете о его устройстве больше, чем после прочтения тысячи книг. Сегодня, в 2025 году, красота и ремесло написания ПО подвергаются разрушению. ИИ угрожает тем, что заменит нас (или, по крайней мере, заберёт все самые приятные аспекты нашего ремесла), а разработка ПО становится всё более стандартизированной, выверенной, упакованной и индустриализированной. Разработке программного обеспечения нужно больше простых удовольствий. Я выяснил, что создание хобби-программ — отличный способ снова напомнить себе, почему вообще я начал работать с компьютерами.
https://habr.com/ru/companies/ruvds/articles/922252/
#хоббипроекты #текстовый_редактор #физический_движок #шахматный_движок #регулярные_выражения
-
Регулярные выражения простыми словами. Часть 3
Разработчики делятся на три типа: тех, кто уже понимает регулярные выражения и порой решает сложные задачи одной строкой; тех, кто все еще боится их и всячески избегает; и тех, кто уже прочитал первую и вторую части этой серии статей и полон оптимизма разобраться с этими магическими письменами. Эта статья специально для третьих, чтобы обратно их напугать, ведь в этой части мы рассмотрим одну из самых сложных, но в буквальном смысле захватывающих тем.
-
Регулярные выражения простыми словами. Часть 3
Разработчики делятся на три типа: тех, кто уже понимает регулярные выражения и порой решает сложные задачи одной строкой; тех, кто все еще боится их и всячески избегает; и тех, кто уже прочитал первую и вторую части этой серии статей и полон оптимизма разобраться с этими магическими письменами. Эта статья специально для третьих, чтобы обратно их напугать, ведь в этой части мы рассмотрим одну из самых сложных, но в буквальном смысле захватывающих тем.
-
Регулярные выражения простыми словами. Часть 3
Разработчики делятся на три типа: тех, кто уже понимает регулярные выражения и порой решает сложные задачи одной строкой; тех, кто все еще боится их и всячески избегает; и тех, кто уже прочитал первую и вторую части этой серии статей и полон оптимизма разобраться с этими магическими письменами. Эта статья специально для третьих, чтобы обратно их напугать, ведь в этой части мы рассмотрим одну из самых сложных, но в буквальном смысле захватывающих тем.
-
Регулярные выражения простыми словами. Часть 3
Разработчики делятся на три типа: тех, кто уже понимает регулярные выражения и порой решает сложные задачи одной строкой; тех, кто все еще боится их и всячески избегает; и тех, кто уже прочитал первую и вторую части этой серии статей и полон оптимизма разобраться с этими магическими письменами. Эта статья специально для третьих, чтобы обратно их напугать, ведь в этой части мы рассмотрим одну из самых сложных, но в буквальном смысле захватывающих тем.
-
[Перевод] Самый быстрый способ нахождения гласной в строке
Недавно меня заинтересовала такая задача: как лучше всего определить, что в строке есть гласная? Казалось бы, тривиальный вопрос, правда? Но, начав разбираться, я осознал, что задача гораздо глубже. Я бросил себе вызов: придумать как можно больше способов обнаружения гласной. Я даже попросил присоединиться ко мне нескольких друзей. Какой способ самый быстрый? Каким никогда не стоит пользоваться? Какой самый умный? Какой самый удобочитаемый? В этом посте я рассмотрю 11 способов обнаружения гласных, алгоритмический анализ, дизассемблирование байт-кода Python, реализацию CPython и даже исследую опкоды скомпилированного регулярного выражения. Поехали!
-
Регулярные выражения: как научиться читать между строк
Представьте: нужно проверить документ или веб-страницу и найти повторяющиеся слова, чтобы, скажем, заменить их. А если найти нужно не просто слова, а электронные адреса, которые бывают разными. Решение этой задачи существенно упростит использование регулярных выражений. Регулярные выражения или regex (от англ. regular expression) – это особый синтаксис для описания шаблонов поиска информации. С их помощью можно искать, заменять или извлекать данные из текста с высокой точностью. В основе регулярных выражений лежат символы, которые задают правила для поиска, например, всех цифр или слов, начинающихся на определенную букву. Регулярные выражения позволяют описать сложные условия поиска в простой и читаемой форме, что делает их незаменимыми для различных задач. Регулярные выражения помогут в разных случаях – от валидации данных, например, при проверке форматов номера телефона до анализа текстов: получения ссылок или другой информации. Посмотрим на синтаксис регулярных выражений. Дальше на примерах станет понятнее.
https://habr.com/ru/articles/897206/
#бот #chatapp #автоматизация_бизнеса #автоматизация #регулярные_выражения #валидация_данных
-
Регулярные выражения: как научиться читать между строк
Представьте: нужно проверить документ или веб-страницу и найти повторяющиеся слова, чтобы, скажем, заменить их. А если найти нужно не просто слова, а электронные адреса, которые бывают разными. Решение этой задачи существенно упростит использование регулярных выражений. Регулярные выражения или regex (от англ. regular expression) – это особый синтаксис для описания шаблонов поиска информации. С их помощью можно искать, заменять или извлекать данные из текста с высокой точностью. В основе регулярных выражений лежат символы, которые задают правила для поиска, например, всех цифр или слов, начинающихся на определенную букву. Регулярные выражения позволяют описать сложные условия поиска в простой и читаемой форме, что делает их незаменимыми для различных задач. Регулярные выражения помогут в разных случаях – от валидации данных, например, при проверке форматов номера телефона до анализа текстов: получения ссылок или другой информации. Посмотрим на синтаксис регулярных выражений. Дальше на примерах станет понятнее.
https://habr.com/ru/articles/897206/
#бот #chatapp #автоматизация_бизнеса #автоматизация #регулярные_выражения #валидация_данных
-
Регулярные выражения: как научиться читать между строк
Представьте: нужно проверить документ или веб-страницу и найти повторяющиеся слова, чтобы, скажем, заменить их. А если найти нужно не просто слова, а электронные адреса, которые бывают разными. Решение этой задачи существенно упростит использование регулярных выражений. Регулярные выражения или regex (от англ. regular expression) – это особый синтаксис для описания шаблонов поиска информации. С их помощью можно искать, заменять или извлекать данные из текста с высокой точностью. В основе регулярных выражений лежат символы, которые задают правила для поиска, например, всех цифр или слов, начинающихся на определенную букву. Регулярные выражения позволяют описать сложные условия поиска в простой и читаемой форме, что делает их незаменимыми для различных задач. Регулярные выражения помогут в разных случаях – от валидации данных, например, при проверке форматов номера телефона до анализа текстов: получения ссылок или другой информации. Посмотрим на синтаксис регулярных выражений. Дальше на примерах станет понятнее.
https://habr.com/ru/articles/897206/
#бот #chatapp #автоматизация_бизнеса #автоматизация #регулярные_выражения #валидация_данных
-
Регулярные выражения: как научиться читать между строк
Представьте: нужно проверить документ или веб-страницу и найти повторяющиеся слова, чтобы, скажем, заменить их. А если найти нужно не просто слова, а электронные адреса, которые бывают разными. Решение этой задачи существенно упростит использование регулярных выражений. Регулярные выражения или regex (от англ. regular expression) – это особый синтаксис для описания шаблонов поиска информации. С их помощью можно искать, заменять или извлекать данные из текста с высокой точностью. В основе регулярных выражений лежат символы, которые задают правила для поиска, например, всех цифр или слов, начинающихся на определенную букву. Регулярные выражения позволяют описать сложные условия поиска в простой и читаемой форме, что делает их незаменимыми для различных задач. Регулярные выражения помогут в разных случаях – от валидации данных, например, при проверке форматов номера телефона до анализа текстов: получения ссылок или другой информации. Посмотрим на синтаксис регулярных выражений. Дальше на примерах станет понятнее.
https://habr.com/ru/articles/897206/
#бот #chatapp #автоматизация_бизнеса #автоматизация #регулярные_выражения #валидация_данных
-
Коротко про regexp в Go
Привет, Хабр! Сегодня рассмотрим regexp — стандартный пакет Go для работы с регулярными выражениями. Если вы уже пользовались регулярками в других языках (например, Python, JavaScript или Perl), то знаете, как они могут нагружать процессор и вызывать некоторые подвисания. Основное отличие Go — он использует движок RE2 , который не поддерживает бэктрекинг. Это значит, что он работает за линейное время и не устроит сюрпризов в виде зависшего сервера.
-
Регулярные выражения делимости чисел
Меня с детства привлекала тема признаков делимости числа. Особенно удивительно было узнать про признаки делимости на 3 и на 9, когда путем простого сложения всех чисел и проверки результата можно было узнать делится ли изначальное число на эту цифру. Кроме того было интересно узнать, что существует регулярное выражение определяющее простоту числа . Но основной фокус там в том, что число записывается в унарном виде. И вот пару лет назад я встретил еще одну интересную задачу по написанию регулярного выражения для определения делится ли искомое число на 7. Само число при этом написано в двоичном виде. Признаки делимости на 7 существуют и для двоичной и для десятичной записи, но как правило они требуют производить операции умножения, сложения и рекурсивно проверять делимость уже получившегося в итоге этих действий меньшего числа, что не очень подходит для написания регулярного выражения. Я предполагал, что каким то образом могут помочь сложные операторы: условное сопоставление (позиционные проверки), обратные ссылки итд, но не разобрался как их использовать конкретно для данной задачи. Гораздо больше я думал в сторону более простой регулярки с использованием только оператора ИЛИ, квантификаторов и скобок. Остановился на построении графа остатков от деления следуя, по которому можно получить остаток заданного числа, но уперся в то, что всякое выражение с использованием скобок, но без ссылок - это в итоге дерево и поэтому произвольный граф туда не ложится. Это как пытаться хранить произвольный граф в JSON или XML - можно, но нужно будет вводить идентификаторы узлов и поля ссылок, а в то же время хранение простого дерева этого не потребует.
https://habr.com/ru/articles/890696/
#регулярные_выражения #алгебра_логики #алгебраические_структуры #парсинг #комбинаторы
-
[Перевод] Видео Bad Apple в 6500 регулярных выражениях на базе поискового механизма vim
Если я хочу посмотреть видео — разве для этого обязательно покидать vim? Что ж, прямо в заголовке этого поста я пообещал вам продемонстрировать Bad Apple в vim, пользуясь только поисковыми запросами. Вот Bad Apple в vim, всё, что здесь меняется — только поисковый запрос:
https://habr.com/ru/articles/873474/
#видео #кадровая_частота #анимация #Python #регулярные_выражения
-
Регулярные выражения простыми словами. Часть 2
Разработчики делятся на три типа: те, кто уже понимает регулярные выражения и порой решает сложные задачи одной строкой; те, кто все еще боится их и всячески избегает; и те, кто уже прочитал первую часть этой серии статей и полон оптимизма разобраться с этими магическими письменами. Эта статья специально для третьих, чтобы им было проще стать первыми.
-
Регулярные выражения простыми словами. Часть 2
Разработчики делятся на три типа: те, кто уже понимает регулярные выражения и порой решает сложные задачи одной строкой; те, кто все еще боится их и всячески избегает; и те, кто уже прочитал первую часть этой серии статей и полон оптимизма разобраться с этими магическими письменами. Эта статья специально для третьих, чтобы им было проще стать первыми.
-
Регулярные выражения простыми словами. Часть 2
Разработчики делятся на три типа: те, кто уже понимает регулярные выражения и порой решает сложные задачи одной строкой; те, кто все еще боится их и всячески избегает; и те, кто уже прочитал первую часть этой серии статей и полон оптимизма разобраться с этими магическими письменами. Эта статья специально для третьих, чтобы им было проще стать первыми.
-
Регулярные выражения простыми словами. Часть 2
Разработчики делятся на три типа: те, кто уже понимает регулярные выражения и порой решает сложные задачи одной строкой; те, кто все еще боится их и всячески избегает; и те, кто уже прочитал первую часть этой серии статей и полон оптимизма разобраться с этими магическими письменами. Эта статья специально для третьих, чтобы им было проще стать первыми.
-
[Перевод] Разбор регулярного выражения, проверяющего простоту чисел
Как-то я исследовал способы наиболее эффективного определения простоты числа и наткнулся на показанный выше код. Он меня заинтриговал. Хоть это, возможно, и не самый эффективный способ, но определённо один из наименее очевидных, поэтому мне стало любопытно. Каким образом соответствие регулярному выражению .?|(..+?)\1+ должно показать, что число не простое (после его преобразования в унарную систему счисления )? Если вы заинтересовались, продолжайте чтение, я проанализирую это регулярное выражение и объясню, что же в нём происходит. Объяснение не зависит от языка программирования, однако я приведу версии показанного выше Java -кода на Python , JavaScript и Perl и объясню, почему они немного различаются. Я объясню, как регулярное выражение ^.?$|^(..+?)\1+$ способно отфильтровывать все простые числа. Почему это выражение, а не .?|(..+?)\1+ (использованное в примере кода на Java )? Это связано с тем, как работает String.matches() , о чём я расскажу ниже. Хотя по этой теме есть несколько постов, я считаю, что они недостаточно глубоки и в них приводится лишь высокоуровневое объяснение, недостаточно хорошо излагающее важные подробности. В своей статье я попытаюсь объяснить подробности, чтобы их мог понять любой. Моя цель — сделать этот код понятным каждому, будь вы гуру регулярных выражений или впервые о них услышали.
-
Регулярные выражения простыми словами. Часть 1
Разработчики делятся на два типа: тех, кто уже понимает регулярные выражения и порой решает сложные задачи одной строкой, и тех, кто все еще боится и всячески их избегает. Эта статья специально для вторых, чтобы им было проще стать первыми. Она либо поможет преодолеть «регекспофобию», либо усугубит ее. В любом случае, добро пожаловать под кат.
-
Регулярные выражения простыми словами. Часть 1
Разработчики делятся на два типа: тех, кто уже понимает регулярные выражения и порой решает сложные задачи одной строкой, и тех, кто все еще боится и всячески их избегает. Эта статья специально для вторых, чтобы им было проще стать первыми. Она либо поможет преодолеть «регекспофобию», либо усугубит ее. В любом случае, добро пожаловать под кат.
-
Регулярные выражения простыми словами. Часть 1
Разработчики делятся на два типа: тех, кто уже понимает регулярные выражения и порой решает сложные задачи одной строкой, и тех, кто все еще боится и всячески их избегает. Эта статья специально для вторых, чтобы им было проще стать первыми. Она либо поможет преодолеть «регекспофобию», либо усугубит ее. В любом случае, добро пожаловать под кат.
-
[Перевод] find + mkdir полны по Тьюрингу
Введение Мы покажем, что система, имеющая лишь команды GNU find и mkdir , полна по Тьюрингу. Хорошо известно, что команды sed и awk сами по себе полны по Тьюрингу, но мне не удалось найти информации о Тьюринг-полноте find + mkdir . Доказательство основано на реализации таг-системы . Мы по порядку рассмотрим реализацию цикла, FizzBuzz и таг-системы.
https://habr.com/ru/articles/837280/
#полнота_по_тьюрингу #машина_тьюринга #mkdir #find #gnu #регулярные_выражения #fizzbuzz
-
[Перевод] find + mkdir полны по Тьюрингу
Введение Мы покажем, что система, имеющая лишь команды GNU find и mkdir , полна по Тьюрингу. Хорошо известно, что команды sed и awk сами по себе полны по Тьюрингу, но мне не удалось найти информации о Тьюринг-полноте find + mkdir . Доказательство основано на реализации таг-системы . Мы по порядку рассмотрим реализацию цикла, FizzBuzz и таг-системы.
https://habr.com/ru/articles/837280/
#полнота_по_тьюрингу #машина_тьюринга #mkdir #find #gnu #регулярные_выражения #fizzbuzz
-
[Перевод] find + mkdir полны по Тьюрингу
Введение Мы покажем, что система, имеющая лишь команды GNU find и mkdir , полна по Тьюрингу. Хорошо известно, что команды sed и awk сами по себе полны по Тьюрингу, но мне не удалось найти информации о Тьюринг-полноте find + mkdir . Доказательство основано на реализации таг-системы . Мы по порядку рассмотрим реализацию цикла, FizzBuzz и таг-системы.
https://habr.com/ru/articles/837280/
#полнота_по_тьюрингу #машина_тьюринга #mkdir #find #gnu #регулярные_выражения #fizzbuzz
-
strtree — классификатор строк на основе регулярных выражений
Вы хотите найти короткие регулярные выражения, полно и точно отделяющие один класс строк от другого? Это статья для вас. Мы поговорим про задачу классификации строк с помощью автоматически определяемых паттернов, а в конце я предоставлю пример такой процедуры с кодом на Python. Пользоваться мы будем небольшой open-source библиотекой strtree .
https://habr.com/ru/articles/824544/
#классификатор_текстов #регулярки #регулярные_выражения #nlp #обработка_текстов #opensource #строки_на_деревьях #строковые_алгоритмы #машинное+обучение
-
strtree — классификатор строк на основе регулярных выражений
Вы хотите найти короткие регулярные выражения, полно и точно отделяющие один класс строк от другого? Это статья для вас. Мы поговорим про задачу классификации строк с помощью автоматически определяемых паттернов, а в конце я предоставлю пример такой процедуры с кодом на Python. Пользоваться мы будем небольшой open-source библиотекой strtree .
https://habr.com/ru/articles/824544/
#классификатор_текстов #регулярки #регулярные_выражения #nlp #обработка_текстов #opensource #строки_на_деревьях #строковые_алгоритмы #машинное+обучение
-
strtree — классификатор строк на основе регулярных выражений
Вы хотите найти короткие регулярные выражения, полно и точно отделяющие один класс строк от другого? Это статья для вас. Мы поговорим про задачу классификации строк с помощью автоматически определяемых паттернов, а в конце я предоставлю пример такой процедуры с кодом на Python. Пользоваться мы будем небольшой open-source библиотекой strtree .
https://habr.com/ru/articles/824544/
#классификатор_текстов #регулярки #регулярные_выражения #nlp #обработка_текстов #opensource #строки_на_деревьях #строковые_алгоритмы #машинное+обучение
-
Covenantus detectus или ещё одна DS-задача
Привет, Хабр! Сегодня с вами участник профессионального сообщества NTA Серебренников Дмитрий. И по дружбе, и по IT‑службе регулярно сталкиваюсь с задачами Data Science. Решением одной из них планирую сегодня поделиться. Поработаю с кредитной документацией, выжму из неё необходимое для аудиторской проверки. Из инструментов применю ловкость рук, python, pathlib, regex, pandas и Abbyy Finereader. Итак, задача состояла в получении необходимых сущностей (ковенантов) из разных по формату и содержанию документов. Пост предназначен прежде всего для столкнувшихся с такой задачкой и тех, кто недавно взял курс в науку о данных. Кстати, о данных — все совпадения случайны, исследуемые материалы вымышлены. Covenantus detectus
https://habr.com/ru/articles/781514/
#pdf #распознование_текста #регулярки #регулярные_выражения #распознование_изображений #python #pathlib #regex #Abbyy_FineReader
-
Covenantus detectus или ещё одна DS-задача
Привет, Хабр! Сегодня с вами участник профессионального сообщества NTA Серебренников Дмитрий. И по дружбе, и по IT‑службе регулярно сталкиваюсь с задачами Data Science. Решением одной из них планирую сегодня поделиться. Поработаю с кредитной документацией, выжму из неё необходимое для аудиторской проверки. Из инструментов применю ловкость рук, python, pathlib, regex, pandas и Abbyy Finereader. Итак, задача состояла в получении необходимых сущностей (ковенантов) из разных по формату и содержанию документов. Пост предназначен прежде всего для столкнувшихся с такой задачкой и тех, кто недавно взял курс в науку о данных. Кстати, о данных — все совпадения случайны, исследуемые материалы вымышлены. Covenantus detectus
https://habr.com/ru/articles/781514/
#pdf #распознование_текста #регулярки #регулярные_выражения #распознование_изображений #python #pathlib #regex #Abbyy_FineReader