Что означает статус Intel IPP -188 (ippStsRegExpMatchLimitErr)?

 
Предыдущий Следующий
ippStsRegExpErr ippStsRegExpQuantifierErr

ippStsRegExpMatchLimitErr

Что означает ippStsRegExpMatchLimitErr

ippStsRegExpMatchLimitErr — ошибка времени выполнения, а не компиляции шаблона. Регулярное выражение и входные данные могут быть синтаксически допустимыми, но matcher прекращает поиск после исчерпания настроенного бюджета сопоставления.

Для расследования сохраняйте и шаблон, и конкретный входной фрагмент. Особенно важны вложенные повторения, неоднозначные альтернативы и длинные строки, вызывающие чрезмерный backtracking. Сначала уменьшите вход до минимального воспроизводимого примера; повышать лимит безопасно только после понимания сложности и границ доверия входным данным.

Как локализовать причину

  • Минимизируйте строку, на которой всё ещё достигается match limit.
  • Проверьте вложенные квантификаторы и альтернативы с большим числом возвратов.
  • Решите, лучше ли переписать шаблон, а не просто увеличивать лимит для недоверенного ввода.

Документация


Нужно найти другой код? Найти другой код состояния или ошибки.