how can I parse url query string by C++?
<p>Is there a light-weight library for this? </p>

<p>I'm use node.js to parse url log file, but I found it's slow by it's default module <code>querystring</code> and tj's <code>qs</code>.</p>

<p>So I wonder if there is a C++ library to parse the url (better to json string directly) and it's light-weight enough to compile to a node C++ addon.</p>

<pre><code>qs.parse('/?0=foo')
qs.parse('/?a[&gt;=]=23')
qs.parse('/?foo=bar&amp;baz')
qs.parse('/?a[b][c]=d')
qs.parse('/?a[b][c][d]=e')
qs.parse('/?a=b&amp;a=c')
qs.parse('/?a[]=b')
qs.parse('/?a[]=b&amp;a[]=c&amp;a[]=d')
qs.parse('/?a=b&amp;a[]=c')
qs.parse('/?a[]=b&amp;a=c')
qs.parse('/?a=b&amp;a[0]=c')
qs.parse('/?a=b&amp;a[1]=c')
qs.parse('/?a[b][]=c&amp;a[b][]=d')
qs.parse('/?a[1]=c&amp;a[0]=b&amp;a[2]=d')
qs.parse('/?a[1]=c&amp;a[0]=b')
qs.parse('/?a[20]=a')
qs.parse('/?a[12b]=c')
qs.parse('/?he%3Dllo=th%3Dere')
qs.parse('/?a[b]=c%20d')
qs.parse('/?foo[0]=bar&amp;foo[bad]=baz')
qs.parse('/?foo[bad]=baz&amp;foo[0]=bar')
qs.parse('/?foo[]=bar&amp;foo[bad]=baz')
qs.parse('/?foo[0][a]=a&amp;foo[0][b]=b&amp;foo[1][a]=aa&amp;foo[1][b]=bb')
qs.parse('/?a[]=b&amp;a[t]=u&amp;a[hasOwnProperty]=c')
qs.parse('/?foo[0].baz=bar&amp;fool.bad=baz')
// ...
</code></pre>

<p>well, can you feel my problem?</p>