Описание тега balancing-groups

Эксклюзивная возможность.NET regex; выглядит как `(?<name1-name2> …)`Или`(?'Name1-name2' …)` </name1-name2>
2 ответа

Балансирующие группы в виде переменной длины

TL;DR: использование захвата (и, в частности, групп балансировки) внутри видимости.NET изменяет полученные захваты, хотя это не должно иметь значения. Что с внешними взглядами.NET нарушает ожидаемое поведение? Я пытался придумать ответ на этот друго…
15 ноя '12 в 00:04
2 ответа

Регулярное упражнение: факториалы

Это новая экспериментальная функция StackOverlow: тренировка мышц регулярных выражений путем решения различных классических задач. Единого правильного ответа не существует, и на самом деле мы должны собрать как можно больше правильных ответов, если …
4 ответа

Как я могу получить самые длинные совпадения для подстрок, заключенных в "{{" и "}}"?

Я пытаюсь разобрать файл викитекста, полученный через API Википедии, и проблема в том, что некоторые из его шаблонов (т.е. фрагменты, заключенные в {{и}}) автоматически не расширяются в викитекст, поэтому мне нужно вручную искать их в статье источни…
14 окт '10 в 11:08
2 ответа

Что такое балансировочные группы регулярных выражений?

Я только что прочитал вопрос о том, как получить данные в двойных фигурных скобках ( этот вопрос), а затем кто-то поднял группы балансировки. Я до сих пор не совсем уверен, что они и как их использовать. Я прочитал " Определение балансирующей группы…
08 июн '13 в 21:00
2 ответа

Написание регулярного выражения для захвата текста между внешними скобками

Итак, я пытаюсь проанализировать файл с текстом в этом формате: outerkey = (innerkey = innervalue) Это становится более сложным. Это также допустимо в файле: outerkey = (innerkey = (twodeepkey = twodeepvalue)(twodeepkey2 = twodeepvalue2)) Поэтому я …
12 авг '10 в 15:01
1 ответ

Использование групп балансировки регулярных выражений для соответствия тегам вложенности

Я пытаюсь использовать регулярные выражения балансировки групп для соответствия вложенности тегов выглядит следующим образом: some text ... {list} nesting loop content {list} {list} {list} bala ... {/list} {/list} {/list} {/list} end мой экспрессон:…
01 май '17 в 04:05
2 ответа

Преобразование рекурсивного шаблона регулярных выражений PCRE в определение групп балансировки.NET

PCRE имеет функцию, называемую рекурсивным шаблоном, которая может использоваться для сопоставления вложенных подгрупп. Например, рассмотрим "грамматику" Q -&gt; \w | '[' A ';' Q* ','? Q* ']' | '&lt;' A '&gt;' A -&gt; (Q | ',')* // to match ^A$. Это…
1 ответ

C# регулярное выражение с балансировочными группами не отвечает

У меня есть следующий код: void Main() { string template = @" aaa {begin iteration items} bbbbbb {begin iteration subitems} ccccccc {end iteration subitems} ddddddddd {begin iteration items} hhhhhhhhhhhhhhhhh {end iteration items} iiiiiiiiiiiiiiiiii…
31 июл '15 в 13:53
1 ответ

Регулярное выражение, которое использует балансирующие группы

У меня есть базовый текстовый шаблонизатор, который использует такой синтаксис: foo bar %IF MY_VAR some text %IF OTHER_VAR some other text %ENDIF %ENDIF bar foo У меня есть проблема с регулярным выражением, которое я использую для его анализа, из-за…
26 ноя '10 в 11:21
1 ответ

Можно ли сопоставить одну позицию регулярного выражения, но не другую (например, позиционную XOR)?

Я стремлюсь создать несколько подвыражений в большем регулярном выражении, где каждое подвыражение соответствует чему-то в одном месте на входе или в другом месте, но не в обоих местах, предпочтительно используя одну и ту же именованную группу для "…
02 дек '11 в 22:39
2 ответа

VBA: несовместимо с балансировочными группами регулярных выражений.NET?

Я проверял, могу ли я использовать балансировочные группы регулярных выражений.NET в функции VBA электронной таблицы Excel. Однако, похоже, что VBA несовместим и не является частью.NET. Например, википедия прямо заявляет, что "VBA несовместим с Visu…
01 авг '12 в 18:41
1 ответ

Regex для сопоставления экранируемых строк?

Я написал это регулярное выражение для соответствия строк: (?&gt;(?&lt;Quote&gt;""|').*?(?&lt;!\\)\k&lt;Quote&gt;) т. е. некоторый текст, заключенный в кавычки. Он также поддерживает экранирование, поэтому он будет соответствовать "hello\"world" в п…
11 май '11 в 02:45
3 ответа

Как сделать захват балансировочной группы?

Допустим, у меня есть этот текстовый ввод. tes{}tR{R{abc}aD{mnoR{xyz}}} Я хочу извлечь вывод ff: R{abc} R{xyz} D{mnoR{xyz}} R{R{abc}aD{mnoR{xyz}}} В настоящее время я могу извлекать только то, что находится внутри групп {}, используя подход сбаланси…
26 сен '13 в 11:30
1 ответ

RegEx Match VB.NET Выбрать чехол без дела

Я ищу RegEx, который найдет Select Case Statement, в которых нет Case Case Else. Вот что я придумала до сих пор (?sm)^\s*Select Case.*(?&lt;!^\s*Case Else.*)End Select Этот работает отлично, за исключением случаев, которые могут иметь вложенные опер…
03 дек '10 в 13:41
1 ответ

Regex с балансировочными группами

Мне нужно написать регулярное выражение, которое захватывает общие аргументы (которые также могут быть универсальными) типа name в специальной записи, как это: System.Action[Int32,Dictionary[Int32,Int32],Int32] давайте предположим, что имя типа [\w.…
02 авг '16 в 12:32
2 ответа

Регекс и балансирующие группы

Я застрял на регулярное выражение: У меня есть строка ввода с цифрами и одной буквой, которая может содержать больше цифр и букв внутри строки и между скобками: Всего несколько примеров 26U(35O40) will be read as 26 and (35 or 40) 22X(34U(42O27)) wi…
22 май '17 в 15:04
1 ответ

Отказ от балансирующей группы в жадном повторении может вызвать дисбаланс?

В качестве общего примера для решения этого вопроса я намерен сопоставить некоторое число aS, то равное количество bплюс еще один b, Изучите два шаблона, представленные в этом фрагменте ( также на ideone.com): var r1 = new Regex(@"(?xn) (?&lt;A&gt; …
17 сен '10 в 02:40
3 ответа

Сопоставить регулярное выражение с изменяемой длиной слова и отрицательной информацией о другом слове?

У меня есть регулярное выражение, которое захватывает шаблон A, только если строка содержит шаблон B где-то до A. Скажем, ради простоты, что А является \b\d{3}\b (т. е. три цифры), а B - это слово "foo". Поэтому регулярное выражение у меня есть (?&l…
1 ответ

Группа балансировки регулярных выражений

Я пытаюсь сопоставить балансировочные скобки ({}) в строках. Например, я хочу сбалансировать следующее: if (a == 2) { doSomething(); { int x = 10; } } // this is a comment while (a &lt;= b){ print(a++); } Я придумал это регулярное выражение из MSDN,…
06 фев '12 в 04:09
0 ответов

Почему эта попытка использования балансировочных групп в Regex не удалась?

Для строки "1-2-3-4"Я хотел создать регулярное выражение, которое дало бы мне следующие совпадения, то есть каждую соответствующую пару цифр, разделенных 1 или более чертами: "1-2" "2-3" "3-4" с каждой цифрой в своей собственной группе захвата. Перв…