Xeoncross Posted December 4, 2008 Share Posted December 4, 2008 I am trying to match HTML tags that aren't SINGLE tags. However, my regex is failing on "a" tags because of the http:// part. (\<([a-z]+)\b[^\/|\>]*\>) or (\<([a-z]+)\b[^\>]*(?!\/\>)\>) The first regex matches the < test > and < a hr=site > thing fine - but it doesn't catch the second link. <this> is a </tag> about something like <br /> or <a href="site.com">site.com</a> <img/> <a href="http://site.com">Google.com</a> <br /> <meta tag="" /> <input type="text" /> The whole goal is that I am scanning for open tags, then closing tags. If there are more open tags than closing tags I will know I need to close those tags. Quote Link to comment https://forums.phpfreaks.com/topic/135537-caching-only-closing-html-tags/ Share on other sites More sharing options...
effigy Posted December 4, 2008 Share Posted December 4, 2008 I am trying to match HTML tags that aren't SINGLE tags. Pairs? <pre> <?php $data = <<<DATA <this> is a </tag> about something like <br /> or <a href="site.com">site.com</a> <img/> <a href="http://site.com">Google.com</a> <br /> <meta tag="" /> <input type="text" /> DATA; preg_match_all('%<(\w+)[^>]*>.*?</\1>%is', $data, $matches); print_r($matches); ?> </pre> Quote Link to comment https://forums.phpfreaks.com/topic/135537-caching-only-closing-html-tags/#findComment-706124 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.