Вопросы с тегом «regular-expressions»

Вопросы о регулярных выражениях, формализм для описания регулярных языков.

4
Как преобразовать конечные автоматы в регулярные выражения?
Преобразование регулярных выражений в (минимальный) NFA, который принимает тот же язык, легко с помощью стандартных алгоритмов, например , алгоритма Томпсона . Другое направление кажется более утомительным, и иногда получающиеся выражения являются грязными. Какие существуют алгоритмы для преобразования NFA в эквивалентные регулярные выражения? Есть ли преимущества в отношении сложности времени или …

1
Является ли regex golf NP-Complete?
Как видно в этой недавней полосе XKCD и в этом недавнем сообщении в блогеПо словам Питера Норвига (история Слэшдота, в которой рассказывается о последнем), «регулярное выражение в гольфе» (которое лучше назвать проблемой разделения регулярных выражений) - это задача определения кратчайшего из возможных регулярных выражений, которое принимает каждое слово в множестве …

4
Как смоделировать обратные ссылки, прогнозирование и просмотр в конечных автоматах?
Этот вопрос был перенесен из переполнения стека, поскольку на него можно ответить в разделе «Информатика в стеке». Мигрировал 7 лет назад . Я создал лексер и анализатор простого регулярного выражения, чтобы взять регулярное выражение и сгенерировать его дерево анализа. Создание недетерминированного автомата конечных состояний из этого дерева разбора относительно просто …

6
Какова связь между языками программирования, регулярными выражениями и формальными языками
Я искал в сети ответ на этот вопрос, и кажется, что все безоговорочно знают ответ, кроме меня. Предположительно, это потому, что заботятся только люди, получившие высшее образование по этому предмету. Я, с другой стороны, был брошен в глубокий конец для школьного задания. Мой вопрос, как именно языки программирования связаны с …

1
«Плотные» регулярные выражения порождают
Вот гипотеза для регулярных выражений: Для регулярного выражения пусть длина | R | быть количеством символов в нем, игнорируя скобки и операторы. Например | 0 ∪ 1 | = | ( 0 ∪ 1 ) ∗ | = 2ррR| R ||р||R|| 0∪1 | = | (0∪1 )*| =2|0∪1|знак равно|(0∪1)*|знак равно2|0 …

2
Какие языки распознают Perl-совместимые регулярные выражения?
Как следует из названия, на прошлых выходных я потратил пару часов, пытаясь обдумать класс языков, сопоставляемых с Perl-совместимыми регулярными выражениями, за исключением любого оператора сопоставления, который позволяет выполнять произвольный код внутри шаблона . Если вы не знаете, что такое PCRE, прочитайте это и это . Проблема в том, что ресурсы, …

1
Регулярные выражения с обратными ссылками над унарным алфавитом
Установка: регулярные выражения с обратными ссылками одинарный язык (1-символьный алфавит) В этом параметре разрешима следующая проблема: Если задано регулярное выражение с обратными ссылками, определяет ли оно регулярный язык? Например, (aa+)\1определяет обычный язык, а (aa+)\1+не -. Можем ли мы решить, какой из них имеет место? Для конкретности «регулярные выражения с обратными …

2
Для каждого «злого» регулярного выражения существует ли не злая альтернатива или дьявол в грамматике?
По-видимому, атаки ReDos используют характеристики некоторых (в противном случае полезных) регулярных выражений ... по сути, вызывая взрыв возможных путей через граф, определенный NFA. Можно ли избежать таких проблем, написав эквивалентное «не злое» регулярное выражение? Если нет (таким образом, грамматика не может быть обработана в практическом пространстве / времени NFA), какие …

2
Являются ли регулярные выражения
Если у меня есть грамматика типа 3, она может быть представлена ​​в автомате (без каких-либо операций со стеком), поэтому я могу представлять регулярные выражения с использованием контекстно-свободных языков. Но могу ли я знать, что грамматика типа 3 - это , L L ( 1 ) , S L R ( …

2
Являются ли регулярные выражения кроссвордами NP-сложными?
Я дурачился на днях на этом сайте: http://regexcrossword.com/, и это заставило меня задуматься о том, как лучше всего это решить. Можете ли вы решить следующую проблему за полиномиальное время или это NP-сложный? Учитывая сетку NxM с N регулярными выражениями для столбцов и M для строк, найдите любое решение для сетки …

3
Почему звездный оператор Клини также называется оператором замыкания Клини?
Я обнаружил, что если я не понимаю этимологию термина «cs / программирования», это обычно означает, что я пропустил или неправильно понял какую-то важную базовую концепцию. Я не понимаю, почему звезду Клини также называют закрытием Клини. Связано ли это с замыканиями в программировании, функцией со связанными нелокальными переменными? ... если задуматься, …

1
Может ли POSIX BRE выразить все обычные языки?
Похоже, что «Основные регулярные выражения», как определено в POSIX.1-2008 , не поддерживают чередование a|b(хотя некоторые реализации grep распознают экранированную версию \|). Поскольку регулярные языки по определению замкнуты относительно объединения, означает ли это, что POSIX BRE обладает меньшей выразительной силой, чем конечный автомат? Или есть какой-то способ имитации чередования с использованием …

4
Почему в регулярных выражениях нет перестановок? (Даже если обычные языки, кажется, могут это сделать)
Проблема Нет простого способа получить перестановку с помощью регулярного выражения. Перестановка: Получение слово ( «ААБК») в другом порядке, без изменения числа или рода писем.w=x1…xnw=x1…xnw=x_1…x_n Regex: Регулярное выражение. Для подтверждения: «Перестановки регулярных выражений без повторения» Ответ создает код JavaScript вместо регулярного выражения, предполагая, что это будет более простым. «Как найти все …

3
Обычные языки, которые нельзя выразить только с помощью двух операций регулярного выражения
Я думал, что все регулярные языки могут быть выражены с помощью регулярных выражений (если язык регулярный, он может быть выражен с помощью регулярных выражений), но мне сказали, что для этого вам нужны все три регулярные операции (конкатенация, объединение и звездочка) держать. Например, мне сказали, что если бы я мог использовать …

1
Разница между регулярным выражением и грамматикой в ​​автоматах
Я новичок в автоматах, и я получил краткое введение в регулярные выражения только вчера. Я прочитал различные правила для определения регулярного выражения. Но я не могу отличить регулярные выражения от грамматики языка (меня не учили грамматике регулярных выражений). Я понимаю, что грамматика помогает нам генерировать допустимые строки в языке, но …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.