The greater than symbol simply matches the literal >
at the end of your target string.
The less than symbol is not so simple. First let's review the lookaround syntax:
The pattern (?<={pattern})
is a positive lookbehind assertion, it tests whether the currently matched string is preceded by a string matching {pattern}
.
The pattern (?={pattern})
is a positive lookahead assertion, it tests whether the currently matched string is followed by a string matching {pattern}
.
So breaking down your expression
(?<=<)
assert that the currently matched string is preceded by a literal <
.*?
match anything zero or more times, lazily
(?=>)
assert than the currently matched string is followed by a literal >
Putting it all together the pattern will extract email@email.com
from the input string you have given it.