У меня есть большой документ, в котором я использую регулярное выражение. Ниже приведен пример подобного выражения:
(?=( aExample| bExample)(?=.*(XX))(?=.*(P1)))
Это работает много раз, но иногда из-за другого текста в документе условие выполняется при просмотре всего документа, например, между «aExample» и «XX» может быть 10 символов, а между «XX» и «XX» - 1000 символов. "P1". Я хотел бы содержать выражение до N символов (скажем, 50 для примера), чтобы регулярное выражение было немного более консервативным. Любая помощь приветствуется. Как я могу уменьшить размер окно регулярного выражения на N символов вместо всей строки / документа? Спасибо!
@revo - извините, я не понял: как я могу уменьшить размер окна регулярного выражения до N символов вместо всей строки / документа?
Отображение некоторых образцов входных данных поможет понять основную проблему.
Возможный дубликат Как работает квантификатор {}?
(?=( aExample| bExample)(?=.{1,50}(XX))(?=.{1,50}(P1)))
Вы хотите ограничить количество .
для просмотра, чтобы вы могли просто использовать фигурные скобки.
В чем вопрос?