When Illustrator exports SVG files, it doesn't do a very good job of optimizing them. One annoying and pointless thing it puts in near the top of the file is the following HTML comment:
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
I also have multiple empty group tags with ids like so:
<g id="svgSteps">
</g>
<g id="svgBase">
</g>
Now, I'm trying to write some PHP using regex and preg_replace
to remove things like this.
I'm completely new to regex and already tried some solutions posted on stackoverflow which didn't work for me.
For the HTML comments I tried:
$fileContent = file_get_contents('my_file');
$fileContent = preg_replace('/<!--(.|\s)*?-->/','',$fileContent);
file_put_contents('my_file',$fileContent);
Which didn't work. When I tried a str_replace
for <!--
instead, that worked so I know the file_get_contents
and file_put_contents
are working (no issues with permissions).
What would be the correct regex for:
Finding HTML comments starting with
<!--
and ending with-->
that have whitespace, alpha-numeric characters, periods, commas, colons and brackets inside.Finding tags starting with
<g
and ending with</g>
that can have an id but only have either whitespace or nothing inside the tag.