How to select a word which contains a previous word?

73 Views Asked by At

I'm trying to select a word that is on the second line, but first I need to check if there is a word on the first line, regex example:

(?<=isaac)select

this is the text

abcdefgisaachijklmnopqrstuvwxyz
abcdefgselecthijklmno

Just to clarify my idea a little

enter image description here

Why doesn't this regex work when isaac precedes select?

How can I solve this?

2

There are 2 best solutions below

1
user3783243 On BEST ANSWER

You can change issac so it is in a non-capture group, and allow for anything until select is present.

(?s)(?:isaac.*)(select)

The (?s) modifies the . operator so it allows for new lines as well.

https://regex101.com/r/qPQH25/1

0
Cary Swoveland On

Since the two words are given there is no point to select the word in the second line; it is enough to determine if the first word is in the first line and the second word is in the second line.

The needed regular expression is simple:

.*isaac.*\n.*select

Start your engine!