title: Json.NET JsonPath syntax for “does not include”, or negative matching?
body: <p>I am trying to filter books in my json that does not have "name" property.</p>
  
  <p>I found it is supported in Java JsonPath </p>
  
  <pre><code>$..book[?(!@.name)]
  </code></pre>
  
  <p>But when I use it in C# ::</p>
  
  <pre><code>json.SelectTokens("$..book[?(!@.name)]")
  </code></pre>
  
  <p>I got ::</p>
  
  <pre><code>"Unexpected character while parsing path query: !"
  </code></pre>
  
  <p>Also tried ::</p>
  
  <pre><code>json.SelectTokens("$..book[?(@.name == null)]")
  </code></pre>
  
  <p>Which is parsed but 0 results returned.</p>