3v4l.org

run code in 300+ PHP versions simultaneously
<?php $html = '<ul class="foo"> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ul> <ul> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ul> <ul class="foo"> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ul>'; $newHtml = preg_replace_callback("/(?<=<ul\sclass=\"foo\">).*?(?=<\/ul>)/s", function($ma){ return preg_replace("/(?<=<li>)(.*)(?=<\/li>)/", '<svg class="icon"><use xlink:href="#foo"></use></svg>$1', $ma[0]); }, $html); echo $newHtml;

preferences:
25.42 ms | 405 KiB | 5 Q