title: preg_match_all Compilation failed: range out of order in character class at offset
body: <p>I have trouble to find specific object with preg_match_all pattern. I have a text. But I would like to find just one specific</p>
  
  <p>Like I have a string of text</p>
  
  <pre><code>sadasdasd:{"website":["https://bitcoin.org/"]tatic/cloud/img/coinmarketcap_grey_1.svg?_=60ffd80');display:inline-block;background-position:center;background-repeat:no-repeat;background-size:contain;width:239px;height:41px;} .cqVqre.cmc-logo--size-large{width:263px;height:45px;}
  /* sc-component-id: sc-2wt0ni-0 */
  </code></pre>
  
  <p>However I just need to find "website":["<a href="https://bitcoin.org/" rel="nofollow noreferrer">https://bitcoin.org/</a>"]. Where website is dynamic data. Such as website can be a google "website":["<a href="https://google.com/" rel="nofollow noreferrer">https://google.com/</a>"]</p>
  
  <p>Right now I have something like this. That's just return a bulk of urls. I need just specific</p>
  
  <pre><code>    $parsePage = "sadasdasd:{"website":["https://bitcoin.org/"]tatic/cloud/img/coinmarketcap_grey_1.svg?_=60ffd80');display:inline-block;background-position:center;background-repeat:no-repeat;background-size:contain;width:239px;height:41px;} .cqVqre.cmc-logo--size-large{width:263px;height:45px;}
          /* sc-component-id: sc-2wt0ni-0 */";    
      $pattern = '/
       \"website":["          # [ character
                  (?:         # non-capturing group
                      [^{}]   # anything that is not a { or }
                      |       # OR
                      (?R)    # recurses the entire pattern
                  )*          # previous group zero or more times
             \"]              # ] character
      /x';
      preg_match_all($pattern, $parsePage, $matches);
      print_r($matches[0]);
  </code></pre>