title: Qt: How to subtract two QSet of QString in case insensitivity mode
body: <p>I'm working on a logical problem using Qt.
  I've got two QSets of QString:</p>
  
  <pre><code>QSet&lt;QString&gt; set1: [ "aaa", "BBB" ]
  QSet&lt;QString&gt; set2: [ "aaa", "bbb", "ccc", "ddd" ]
  </code></pre>
  
  <p>I want to subtract set1 from set2, so I use:</p>
  
  <pre><code>set2.subtract( set1 );
  </code></pre>
  
  <p>And I obtain:</p>
  
  <pre><code>set2: ["bbb", "ccc", "ddd"]
  </code></pre>
  
  <p>But in that case "bbb" isn't removed from set2, although set1 contains this record.
  That's because the default QString::contains method (it is the method used by QSet::subtract) is case sensitive.</p>
  
  <p>There is another QString::contains method which takes a parameter to define the case sensitivity mode, but I don't really see how I could use it.</p>
  
  <p>Does anyone have an idea how to make a case insensitive subtraction between two QSet of QString, please?</p>
  
  <p>Here's what I've tried so far:</p>
  
  <p><strong>Transform both sets in uppercase</strong> set2 is displayed in a list, so it won't be fancy if all items are in uppercase (or lowercase neither).</p>
  
  <p><strong>Extend QSet class and override subtract method</strong> I've tried to extend this class with a MyStringSet custom class, but I'm not very comfortable with Qt and this appears to me quite complicated.</p>