title: Regex to exclude specific characters
body: <p>I have a regex formula that I'm using to find specific patterns in my data. Specifically, it starts by looking for characters between "{}" brackets, and looks for "p. " and grabs the number after. I noticed that, in some instances, if there's not a "p. " value shortly after the brackets, it will continue to go through the next brackets and grab the number after.</p>
  
  <p>For example, here is my sample data:</p>
  
  <pre><code>{Hello}, [1234] (Test). This is sample data used to answer a question {Hello2} [Ch.8 p. 87 gives more information about...
  </code></pre>
  
  <p>Here is my code:</p>
  
  <pre><code>\{(.*?)\}(.*?)p\. ([0-9]+)
  </code></pre>
  
  <p>I want it to return this only:</p>
  
  <pre><code>{Hello2}  [Ch.8 p. 87
  </code></pre>
  
  <p>But it returns this:</p>
  
  <pre><code>{Hello},  [123:456] (Test).  This is stample data used to answer a
  question {Hello2}  [Ch.8 p. 87
  </code></pre>
  
  <p>Is there a way to exclude strings that contain, let's say, "{"?</p>