I’m sure this is an easy one, and as much as I’ve googled and searched here on SO – I can’t seem to figure out what is wrong with this. I have other areas on this page where I use similar expressions that return exactly what I want.
However, I can’t get this particular bit to return what I want, so maybe someone can help me.
I have a div with a specific ID “user-sub-commhome” – I want to pull out the text from within that div. The text is surrounded by tags but I can easily use strip_tags to get those gone. I’m using regex to try and pull the data out.
Here is my code:
$intro = "<div id="user-sub-summary">Summary</div>
<div id="user-sub-commhome"><em>Commercial</em></div>
<div id="whatever">whatever</div>";
$regex = '#\<div id="user-sub-commhome"\>(.+?)\<\/div\>#s';
preg_match($regex, $intro, $matches);
$match = $matches[0];
echo $match;
I’ve tried changing things with no success, nothing seems to work to echo anything. So I’m hoping some power that be who is much more experienced with regex can help.
Your code works for me if you change the enclosing doublequotes around
$introto single quotes:You might want to read some famous advice on regular expressions and HTML.