クエリ文字列を構造化されたNSDictionaryに解析する
-
06-07-2019 - |
質問
クエリ文字列があります: a = 1& b = 2& c [1] = 3& c [2] = 4
etc…
a =>のNSDictionaryが必要です。 1
、 b => 2、c = gt。 [3,4]
。 cの値は配列であることに注意してください。また、 c [1] [2] = 5
のようなものを処理して、配列の配列を作成できる必要があります c => [[5]]
。
もちろん、&
と =
を分割することで自分で行うことができますが、配列や配列の配列などの他のケースについてはどうでしょうか。 POSTリクエストqueryStringから 構造化 NSDictionaryが必要で、これが既に存在する場合はホイールを書き換えたくありません。
クエリ文字列を構造化されたNSDictionaryに解析する、Appleまたはサードパーティを介したクラス/メソッドはありますか?
解決
Mac用Googleツールボックスには、 GTMNSDictionaryURLArgumentsAdditions
NSDictionary
のカテゴリで、必要な処理を実行できます。
(クライアント側で)クエリ文字列を制御できる場合、 NSDictionary
に直接デコードできるエンコードされたplistを送信できます。
他のヒント
この場合はやり過ぎかもしれませんが、ParseKitはCocoaアプリケーション用にCocoaで書かれたオープンソースのトークン化/解析ツールキットです:
それはあなたにとって興味があるかもしれません。
ParseKitは、Tokenizerとその上に構築された高レベルの解析ツールキットという2つのコンポーネントに明確に分離されています。これらのコンポーネントのいずれかまたは両方を使用して、この種のタスクを支援できます。ただし、この比較的単純な解析タスクでは、ParseKitが過剰に機能する可能性があります。