- preg_replace: documentation ( source)
<?php
$text = ".a {\r\n // rules\r\n}\r\n\r\n.a-b,\r\n.a-b .b, .a-b.s\r\n.x .y, .x {\r\n // rules\r\n}\r\n\r\n@a {\r\n // rules\r\n}\r\n\r\n@k {\r\n // rules\r\n}";
echo preg_replace('~(?:\G(?!\A)|^[@.])[^{]*?\K\s+~m', ' ', $text);