Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

The Leftmost Longest Rule

Boost , Boost.Regex 5.1.2 , Regular Expression Syntax

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Часто существует более одного способа сопоставления регулярного выражения в определенном месте, для POSIX основных и расширенных регулярных выражений, «лучший» матч определяется следующим образом:

  1. Найдите самый левый матч, если в этом месте возможен только один матч, затем верните его.
  2. Найдите самые длинные из возможных матчей, а также любые связи. Если есть только один такой возможный матч, то верните его.
  3. Если нет отмеченных субэкспрессий, то все остальные альтернативы неотличимы; верните первую из найденных.
  4. Найти матч, который совпал с первым подвыражением в самой левой позиции, наряду с любыми связями. Если есть только на таком матче возможно, то верните его.
  5. Найти матч, который имеет самый длинный матч для первого подвыражения, наряду с любыми связями. Если есть только один такой матч, то верните его.
  6. Повторите шаги 4 и 5 для каждого дополнительного отмеченного подвыражения.
  7. Если еще остается более одного возможного матча, то они неотличимы; верните первый найденный.

PrevUpHomeNext

Статья The Leftmost Longest Rule раздела Boost.Regex 5.1.2 Regular Expression Syntax может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Regular Expression Syntax ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-09-13 11:29:39/0.0062119960784912/0