$re = '/(?<=\ id\ \|.)(([a-zA-Z0-9_]{8})-([a-zA-Z0-9_]{4})-([a-zA-Z0-9_]{4})-([a-zA-Z0-9_]{4})-([a-zA-Z0-9_]{12}))/';
$str = 'Created a new subnet:
+-------------------+------------------------------------------------+
| Field | Value |
+-------------------+------------------------------------------------+
| allocation_pools | {"start": "10.42.42.2", "end": "10.42.42.254"} |
| cidr | 10.42.42.0/24 | | dns_nameservers | | | enable_dhcp | True |
| gateway_ip | 10.42.42.1 |
| host_routes | |
| id | 3eded702-2909-4515-bf74-7c7c2c7c96e3 |
| ip_version | 4 |
| ipv6_address_mode | |
| ipv6_ra_mode | |
| name | Atelier |
| network_id | 5d15b14c-1d39-48d5-8f48-0dfd68c98d47 |
| tenant_id | d3c17d0e8bd742ed939794a98991886f
| +-------------------+------------------------------------------------+
';
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