title: Swift String addingPercentEncoding not working for all special characters
body: <p>This is the string which is further passed as url parameter :  </p>
  
  <pre><code>pass@#$%&amp;*?123
  </code></pre>
  
  <p>I am using this for encoding the characters :  </p>
  
  <pre><code>password.text?.addingPercentEncoding(withAllowedCharacters: .urlFragmentAllowed) 
  </code></pre>
  
  <p>This gives me :  </p>
  
  <pre><code>pass@%23$%25&amp;*?123
  </code></pre>
  
  <p>Thus not all characters are encoded using this.<br>
  I also tried with <strong>urlQueryAllowed</strong>, <strong>urlPasswordAllowed</strong> and other values, but they don't encode all the characters (if you want, I can share the encoded values).<br>
  This is the desired string :  </p>
  
  <pre><code>pass%40%23%24%25%26*%3F123
  </code></pre>
  
  <p>What should be used here ?</p>