Oracle - Определите максимальный поддерживаемый размер для регулярного выражения

У меня есть регулярное выражение, которое бросает РТЫ 12733, "регулярное выражение является слишком длинным". Как я определяю, каков максимальный поддерживаемый размер?

К вашему сведению: оскорбление regex является 892 символами. Это - сгенерированный regex, таким образом, я мог измениться, как я генерирую и выполняю его, но я хотел бы знать то, что - пределы макс. размеру, прежде чем я изменюсь, как я генерирую и выполняюсь.

(рабочая Oracle 10.2 г)

ОБНОВЛЕНИЕ:

Если это зависит от фактического regex, вот начало его (остальное - просто повторенное то же самое с различными значениями между ^ и $):

(^R_1A$|^R_2A$|^R_3A$|^R_4A$|^R_4B$|^R_5A$|^R_5B$...

6
задан FrustratedWithFormsDesigner 4 September 2013 в 15:37
поделиться

1 ответ

Глядя на документацию по функциям регулярных выражений, REGEXP_SUBSTR, REGEXP_INSTR и REGEXP_REPLACE, он содержит следующую цитату для шаблона:

шаблон - это регулярное выражение. Обычно это текстовый литерал и может иметь любой из типов данных CHAR, VARCHAR2, NCHAR или NVARCHAR2. Он может содержать до 512 байт . Если тип данных шаблона отличается от типа данных source_char, Oracle Database преобразует шаблон в тип данных source_char. Список операторов можно указать в pattern` **

Взято из здесь

8
ответ дан 10 December 2019 в 02:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: