title: preg_replace all occurrences in string withing defined delimeters
body: <p>I am trying to replace all occurrences of "<strong>a</strong>" with "<strong>b</strong>" inside some string. Problem is that I need to replace only those letters which are inside brackets:</p>
  
  <blockquote>
    <p>asd asd asd <strong>[asd asd asd]</strong> asd asd asd</p>
  </blockquote>
  
  <p>For now I have this code:</p>
  
  <pre><code>$what = '/(?&lt;=\[)a(?=.*?\])/s';
  $with = 'b';
  $where = 'asd asd asd [asd asd asd] asd asd asd';
  </code></pre>
  
  <p>But it only replaces the first "a", and I am getting this result:</p>
  
  <blockquote>
    <p>asd asd asd <strong>[bsd asd asd]</strong> asd asd asd</p>
  </blockquote>
  
  <p>I realy need to done this only with one preg_replace call.</p>