how can I parse url query string by C++?
是否有一个轻量级的库?
我正在使用node.js解析url日志文件,但由于默认模块
所以我想知道是否有一个C库来解析url(最好直接解析为json字符串),它的轻量级足以编译为节点C插件。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | qs.parse('/?0=foo') qs.parse('/?a[>=]=23') qs.parse('/?foo=bar&baz') qs.parse('/?a[b][c]=d') qs.parse('/?a[b][c][d]=e') qs.parse('/?a=b&a=c') qs.parse('/?a[]=b') qs.parse('/?a[]=b&a[]=c&a[]=d') qs.parse('/?a=b&a[]=c') qs.parse('/?a[]=b&a=c') qs.parse('/?a=b&a[0]=c') qs.parse('/?a=b&a[1]=c') qs.parse('/?a[b][]=c&a[b][]=d') qs.parse('/?a[1]=c&a[0]=b&a[2]=d') qs.parse('/?a[1]=c&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&foo[bad]=baz') qs.parse('/?foo[bad]=baz&foo[0]=bar') qs.parse('/?foo[]=bar&foo[bad]=baz') qs.parse('/?foo[0][a]=a&foo[0][b]=b&foo[1][a]=aa&foo[1][b]=bb') qs.parse('/?a[]=b&a[t]=u&a[hasOwnProperty]=c') qs.parse('/?foo[0].baz=bar&fool.bad=baz') // ... |
好吧,你能感觉到我的问题吗?
您可以使用cpp-netlib库,尤其是URI类(boost :: network :: http :: uri)。更多信息在这里。