$re = '/num:\s*{\s*(\d+)\s*}[\s\S]+?(?:ip\S+:{\s*([\d\.]+)\s*}[\s\S]+?)[\s\S]+?(?:ip\S+:{\s*([\d\.]+)\s*}[\s\S]+?)[\s\S]+?Uplink:\s*{\s*(\d+)\s*}[\s\S]+?Downlink:\s*{\s*(\d+)}\s*[\s\S]+xTime:{\s*([\s\d-:]*?)\s*}/';
$str = '{ num:{3025285000} }
{ ipadd:{iPadd:{iPv4add:{111.111.112.223} } } }
{ ipval:{iPadd:{13.100.1.11} } }
{ :{abc:{-} ddf:{-} mainVALUplink:{139161} mainVALDownlink:{6269538} kppacRR:{bbckdo} xTime:{2019-07-22 18:09:55 -03:00 } ppwo:{-} wwe:{-} iiurur:{qCI:{8} eerrr:{-} pppwie:{-} iiwww:{-} oouryru:{-} gg:{104} oosp:{-} pppsss:{-} } } }';
preg_match($re, $str, $matches, PREG_OFFSET_CAPTURE, 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