<?php
$input = <<<INP
value that I {want}, vs value "I do {NOT} want".
Let's make it {nested {this {time}}} And yes, it's even "{bullet-{proof}}" :)
INP;
preg_match_all('~("|\').*?\1(*SKIP)(*FAIL)|\{(?:[^{}]|(?R))*\}~', $input, $m);
print_r($m[0]);
?>
Warning: preg_match_all(): Compilation failed: nothing to repeat at offset 11 in /in/YbLQs on line 7
Notice: Undefined offset: 0 in /in/YbLQs on line 9
Output for 4.4.2, 5.1.2
Warning: preg_match_all(): Compilation failed: nothing to repeat at offset 11 in /in/YbLQs on line 8
Notice: Undefined offset: 0 in /in/YbLQs on line 10
Output for 4.3.0 - 4.3.10
Warning: Compilation failed: nothing to repeat at offset 11 in /in/YbLQs on line 7
Notice: Undefined offset: 0 in /in/YbLQs on line 9