I've seen that, for some rare strings, neither of those work as expected. Finally I've choosen the "procedural" method (more clear and secure to work): $s = ' <table>...</table>'; $indentation = mb_substr($s, 0, mb_strlen($s) - mb_strlen(ltrim($s))); Thanks to everyone for the ideas and help. El 29/10/16 a les 16:02, Narcis Garcia ha escrit: > Those two expressions are the only that work: > > preg_replace('/^(\s*)\S*/','${1}',' <table>...</table>') > preg_filter('/^(\s*)\S*/','${1}',' <table>...</table>') > > Which one of those functions is the best to be used for this case? > > > El 29/10/16 a les 07:52, richard gray ha escrit: >> On 28/10/2016 14:15, Christoph M. Becker wrote: >>> >>> Shouldn't that be >>> >>> ^( *)[^ ] >>> >>> instead? >>> >> or maybe even ..? >> >> ^(\s*) >> >> Rich >> > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php