-3

Regex для поиска по нескольким линиям, который должен выбрать текст «abc», который предшествует тексту « хуг»и не должен ничего выбрать, кроме„ABC“Regex для поиска по нескольким линиям, который должен выбрать текст «abc», который следует перед текстом «xyz» и не должен выбирать ничего, кроме «abc»

предположим, если текст, как показано ниже,

aaaabbbb 
    abc 
    abc 
lmn xyz 

регулярное выражение должно соответствовать только текст аЬс в 3-й линии чуть выше последней строке

+0

А где ваш код? Вы даже попробовали что-нибудь? – malutki5200

+0

Ага, вы хотите совместить кратчайшее окно между нужным значением и некоторым текстом после него. Вам нужно использовать умеренный жадный токен. [Этот мой ответ] (http://stackoverflow.com/a/40556433/3832970) (для аромата регулярного выражения ICU, аналогичного PCRE) может немного рассказать о том, как это делается. Попробуйте сами, основываясь на этом, и вернитесь, если вы не получите нужный вам результат. –

+0

Нет, этот сценарий предназначен для поиска по нескольким линиям –

ответ

0

Могли попробуйте следующее:

/.*(abc).*xyz/s 

Пожалуйста, обратите внимание на опцию ы, что делает эту работу по нескольким линиям, используя только. * Пропустить как обычные символы и новые линии

+0

Нет, это регулярное выражение выбирает весь текст –

+0

Нет, это регулярное выражение соответствует всему тексту, но текст, требуемый вам, появляется в первой группе соответствия, откуда вы должны получить результат. – Miro

+0

Я хочу, чтобы это произошло в одном регулярном выражении –