$re = '/(?:^|\G)( {4}|\t)/m';
$str = '<?php
class SomeClass
{
var $property = 1;
function double(int $x)
{
$result = $x + $x;
// line already indented with tabs
// line started with tab, but followed with spaces
// line has 4 spaces in the middle
// line endings with 4 spaces
return $result;
}
}';
$subst = "\t";
$result = preg_replace($re, $subst, $str);
echo "The result of the substitution is ".$result;
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php