Regex that extracts text between tags, but not the tags

php, preg-match, preg-match-all, regex

Solution

You can use this following Regex:

>([^<]*)<

or, >[^<]*<

Then eliminate unwanted characters like '<' & '>'

Problem

I want to write a regex which extract the content that is between two tags `<title>` in a string but not the tags. IE I have the following ``` <title>My work</title> <p>This is my work.</p> <p>Learning regex.</p> ``` The regex ``` (<title>)(.*?)(<\/title>) ``` extracts `<title>My work</title>` but I want to extract only `My work`. How can I do that? This is a link to the example http://regex101.com/r/mD8fB0

Original source