I am trying to use regex (PCRE2) to scrape data from mail, I am having issue trying to match specific occurrence.
Example:
Person Requesting
Salutation Mr.
First Name* Paul
Last Name* John
Person Handling Request
Salutation Ms.
First Name* Alice
Last Name* Parish
I am using the following regex to get the first name: (?<=First Name\*). . So, I get Paul, what I want to do is having different regex to get the second matches only.
I tried using lookaround function :
(?=Person Handling Request) (?<=First Name\*).
My question is, how would I go to get only the First Name from Person Handling Request?
CodePudding user response:
You can use
(?s)Person Handling Request.*?First Name\*\s*\K(?-s).
See the regex demo. Details:
(?s)- make.match line break chars, tooPerson Handling Request- a fixed string.*?- any zero or more chars, as few as possibleFirst Name\*- aFirst Name*fixed string\s*- zero or more whitespaces\K- match reset operator that removes all text matched so far from the overall match memory buffer(?-s)- disable DOTALL effect.- match and return the rest of the line (one or more chars other than line break chars).
