title: Python weird circumflex (^) issue in NAPTR query
body: <p>I'm using Python2 to implement a server which provides NAPTR DNS answers using dnslib.</p>
  
  <p>The forged answers are in the following format:</p>
  
  <pre><code>0.0.0.0.0.0.0.e164.arpa. 60 IN NAPTR  20 20 "u" "SIP+E2U" "!^.*$!SIP:0000@whatever.0.0.e164!" .
  </code></pre>
  
  <p>I use <em>dig</em> in order to perform the queries by using the following syntax:</p>
  
  <pre><code>dig NAPTR 0.0.0.0.0.0.0.e164.arpa @&lt;server_ip&gt;
  </code></pre>
  
  <p>The issue is that whenever the regexp part of the NAPTR record contains a circumflex (^), <em>dig</em> flags the retrieved packet as malformed:</p>
  
  <pre><code>;; Got bad packet: syntax error
  </code></pre>
  
  <p>If I remove the circumflex from the string, the query answer gets retrieved properly.
  So it seems that the circumflex is being somehow misintepreted.
  I tried to specify <em>regexp.encode('utf-8')</em>, but that didn't solve the issue. 
  Any ideas?</p>