title: Regex: match all special characters but not *
body: <p>Yet another question about a regex.</p>
  
  <p>I'm trying to match all special characters, except '*'.</p>
  
  <p>So if I match my regex against:</p>
  
  <pre><code>John%%%* dadidou
  </code></pre>
  
  <p>I should get:</p>
  
  <pre><code>John* dadidou
  </code></pre>
  
  <p>Here: <a href="https://stackoverflow.com/questions/9727097/how-to-match-with-regex-all-special-chars-except-in-php">How to match with regex all special chars except &quot;-&quot; in PHP?</a></p>
  
  <p>The accepted answer advices to use (if I want to exclude '-'):</p>
  
  <pre><code>[^\w-]
  </code></pre>
  
  <p>But doesn't that mean: "NOT a special character, NOT -", which is a bit redundant ?</p>