$re = '/^([a-zA-Z]{3}\s\d{2})\s(\d{2}:\d{2}:\d{2})\s(.*?)\s(.*?)\s(.*)/m';
$str = 'Jan 16 05:00:56 ubuntu NetworkManager: <info> DHCP: device eth5 state changed preinit -> bound
Jan 15 10:31:10 virtual-machine NetworkManager[1478]: <info> address 192.168.83.135
Jan 15 10:31:10 virtual NetworkManager[1478]: <info> address 192.168.83.135
Jan 15 10:31:10 1231654-sda-sd-as-d12123-Z-z--Z_ dhclient <info> address 192.168.83.135
Jan 15 10:31:10 1231654-sdaz--Z_ CRONTAb[] <info> address 192.168.83.135
Jan 15 10:31:10 12316da-as-d12123-Z-z--Z_ kernel <info> address 192.168.83.135
Jan 15 07:35:02 garethioe rsyslogd: [origin software="rsyslogd" swVersion="5.8.11" x-pid="1412" x-info="http://www.rsyslog.com"] rsyslogd was HUPed';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
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