title: How to generate string elements that don't match a pattern?
body: <p>If I have</p>
  
  <pre><code>days="1 2 3 4 5 6"
  
  func() {
      echo "lSecure1"
      echo "lSecure"
      echo "lSecure4"
      echo "lSecure6"
      echo "something else"
  }
  </code></pre>
  
  <p>and do</p>
  
  <pre><code>func | egrep "lSecure[1-6]"
  </code></pre>
  
  <p>then I get</p>
  
  <pre><code>lSecure1
  lSecure4
  lSecure6
  </code></pre>
  
  <p>but what I would like is</p>
  
  <pre><code>lSecure2
  lSecure3
  lSecure5
  </code></pre>
  
  <p>which is all the days that doesn't have a <code>lSecure</code> string.</p>
  
  <p><strong>Question</strong></p>
  
  <p>My current idea is to use <code>awk</code> to split the <code>$days</code> and then loop over all combinations.</p>
  
  <p>Is there a better way?</p>
  
  <p>Note that grep -v inverts the sense of a plain grep and does not solve the problem as it does not generate the required strings.</p>