I wrote a regex to fetch string from HTML, but it seems the multiline flag doesn't work.
This is my pattern and I want to get the text in h1
tag.
var pattern= /<div class="box-content-5">.*<h1>([^<]+?)<\/h1>/mi
m = html.search(pattern);
return m[1];
I created a string to test it. When the string contains "\n", the result is always null. If I removed all the "\n"s, it gave me the right result, no matter with or without the /m
flag.
What's wrong with my regex?
dotAll
modifier so you can do/.../s
and your dots will also match new lines. As of July 2017 it's behind a flag in Chrome. – user993683