title: Extract words surrounding a RegEx match using re.findall when there exists an overlapping index
body: <p>The goal is to extract 100 characters before and after the keyword &quot;bankruptcy&quot;.</p>
  <pre><code>str = &quot;The company announced bankruptcy on jan 1, 1900. Many more companies announced bankruptcy in 1920s.&quot;
  
  pattern = r&quot;(?i)\s*(?:\w|\W){0,100}\b(?:bankruptcy)\b\s*(?:\w|\W){0,100}&quot;
  
  import re
  
  output = re.findall(pattern, str)
  </code></pre>
  <p><strong>Expected output:</strong></p>
  <pre><code>['The company announced bankruptcy on jan 1, 1900. Many more companies announced bankruptcy in 1920s.', 
   'The company announced bankruptcy on jan 1, 1900. Many more companies announced bankruptcy in 1920s.']
  </code></pre>
  <p><strong>Current output:</strong> <code>['The company announced bankruptcy on jan 1, 1900. Many more companies announced bankruptcy in 1920s.']</code></p>
  <p>Is there a way to resolve overlapping indexes using <code>re.findall</code>?</p>