title: c# regular expression exclude certain character
body: <p>I am trying to match a string in C# using Regex.IsMatch that has the following format: </p>
  
  <blockquote>
    <p>([anything here[anything here]anything here])+</p>
  </blockquote>
  
  <p>Example: <code>[mark[MARK]mark][[spacing]]</code> would be a valid string, but <code>[[[spacing]spacing]</code> would be an invalid one.</p>
  
  <p>Notice that </p>
  
  <blockquote>
    <p>"anything here"</p>
  </blockquote>
  
  <p>string cannot contain </p>
  
  <blockquote>
    <p>"[" or "]"</p>
  </blockquote>
  
  <p>, and it also can be empty.</p>
  
  <p>I tried something like<code>@"(\[{1}\w*\[{1}\w*\]{1}\w*\]{1})+"</code>, but I don't know how to tell the Regex engine that <code>\w*</code> cannot contain </p>
  
  <blockquote>
    <p>"[" or "]"</p>
  </blockquote>
  
  <p>.</p>
  
  <p>Thank you!</p>