$re = '/((?:(?<!\d)(\d{1,4}(?:[\.,]\d{1,6})?)\s+((?:kilogram|kilos|kg)))|(?:((?:kilogram|kilos|kg))\s+(\d{1,4}(?:[\.,]\d{1,6})?)))/m';
$str = 'toitnt kg 15.6 oeingoiegn
oinef 45.9009090909 kg eoif
something blah 65.78 kilos ow';
$subst = "*THIS IS THE NUMBER: '$2$5'* AND *THIS IS THE UNIT: '$3$4'*";
$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