title: iPhone : Complex CSV Parser
body: <p>I'd like to parse a complex CSV file. I searched sources on the web but I only found readers for simple csv with coma and quote marks. But mine also contains "{", "[" and ":" in order to create groups, subgroups...</p>
  
  <p>How can I retrieve a proper NSArray or a NSDictionary from this kind of csv ?
  Or do you know a great (great !) csv reader/parser ?</p>
  
  <p>Thanks !</p>
  
  <p>Here is an example :</p>
  
  <blockquote>
    <p>{"meta":{"code":200},"response":{"groups":[{"type":"nearby","name":"√Ä
    proximit√©","items":[{"id":"4bc88ad72f94d13aa9c5137f","name":"M√©tro
    Chauss√©e d'Antin - La Fayette
    [7,9]","contact":{},"location":{"address":"M√©tro
    Chauss√©e d'Antin - La
    Fayette","city":"Paris","state":"√éle
    de
    France","postalCode":"75009","lat":48.872908,"lng":2.33325,"distance":39},"categories":[{"id":"4bf58dd8d48988d1fd931735","name":"Subways","icon":"http://foursquare.com/img/categories/travel/subway.png","parents":["Travel
    Spots"],"primary":true}],"verified":false,"stats":{"checkinsCount":885,"usersCount":368},"hereNow":{"count":0}},{"id":"4ba8e508f964a520e4f739e3","name":"AdenClassifieds","contact":{},"location":{"address":"1-3
    rue La
    Fayette","city":"Paris","state":"France","postalCode":"75009","lat":48.8733461,"lng":2.3340489,"distance":50},"categories":[{"id":"4bf58dd8d48988d124941735","name":"Offices","icon":"http://foursquare.com/img/categories/building/default.png","parents":["Homes,
    Work,
    Others"],"primary":true}],"verified":false,"stats":{"checkinsCount":187,"usersCount":29},"hereNow":{"count":0}},{"id":"4c10cd34b4aeef3bad5afc0f","name":"AdenSourcing","contact":{},"location":{"address":"1,
    rue La
    Fayette","city":"Paris","state":"France","postalCode":"75009","lat":48.873009,"lng":2.333263,"distance":28},"categories":[{"id":"4bf58dd8d48988d125941735","name":"Tech
    Startups","icon":"http://foursquare.com/img/categories/building/default.png","parents":["Homes,
    Work,
    Others","Offices"],"primary":true},{"id":"4bf58dd8d48988d174941735","name":"Coworking
    Spaces","icon":"http://foursquare.com/img/categories/building/default.png","parents":["Homes,
    Work,
    Others","Offices"]}],"verified":false,"stats":{"checkinsCount":60,"usersCount":7},"hereNow":{"count":0}},{"id":"4b6d79c2f964a520f6762ce3","name":"N√©gatif+","contact":{},"location":{"address":"106
    rue
    lafayette","city":"Paris","state":"France","postalCode":"75010","lat":48.873035,"lng":2.333235,"distance":26},"categories":[{"id":"4bf58dd8d48988d1ff941735","name":"Miscellaneous
    Shops","icon":"http://foursquare.com/img/categories/shops/default.png","parents":["Shops"],"primary":true}],"verified":false,"stats":{"checkinsCount":121,"usersCount":51},"hereNow":{"count":0}},{"id":"4beeb21a2c082d7f96b53042","name":"Sephora
    Haussmann","contact":{},"location":{"address":"23
    bd
    Hausmann","city":"Paris","state":"Ile-de-France","lat":48.8728835,"lng":2.3334661,"distance":41},"categories":[{"id":"4bf58dd8d48988d10c951735","name":"Cosmetics
    Shops","icon":"http://foursquare.com/img/categories/shops/beauty_cosmetic.png","parents":["Shops"],"primary":true}],"verified":false,"stats":{"checkinsCount":135,"usersCount":75},"hereNow":{"count":0}},{"id":"4af55e08f964a520f3f821e3","name":"Chez
    Jean","contact":{},"location":{"address":"4
    rue La
    Fayette","city":"Paris","state":"France","postalCode":"75009","lat":48.8731558,"lng":2.3334978,"distance":13},"categories":[{"id":"4bf58dd8d48988d118951735","name":"Grocery
    Stores","icon":"http://foursquare.com/img/categories/shops/food_grocery.png","parents":["Shops","Food and Drink
    Shops"],"primary":true}],"verified":false,"stats":{"checkinsCount":46,"usersCount":27},"hereNow":{"count":0}},{"id":"4bee9a52e8c3c928dfd89892","name":"H&amp;M","contact":{},"location":{"lat":48.872951,"lng":2.333551,"distance":35},"categories":[{"id":"4bf58dd8d48988d104951735","name":"Boutiques","icon":"http://foursquare.com/img/categories/shops/apparel.png","parents":["Shops","Clothing
    Stores"],"primary":true}],"verified":false,"stats":{"checkinsCount":84,"usersCount":66},"hereNow":{"count":0}},{"id":"4b51d04df964a520865627e3","name":"Surcouf","contact":{},"location":{"address":"21,
    bd
    Haussmann","city":"Paris","state":"France","postalCode":"75009","lat":48.8728008,"lng":2.3339615,"distance":65},"categories":[{"id":"4bf58dd8d48988d122951735","name":"High
    Tech
    Outlets","icon":"http://foursquare.com/img/categories/shops/technology.png","parents":["Shops"],"primary":true}],"verified":false,"stats":{"checkinsCount":332,"usersCount":194},"hereNow":{"count":0}},{"id":"4b1e6795f964a5209a1924e3","name":"Le
    Manoir","contact":{},"location":{"address":"34
    Boulevard
    Haussmann","city":"Paris","state":"France","postalCode":"75009","lat":48.872964707066394,"lng":2.334015369415283,"distance":56},"categories":[{"id":"4bf58dd8d48988d16d941735","name":"Caf√©s","icon":"http://foursquare.com/img/categories/food/cafe.png","parents":["Food"],"primary":true}],"verified":false,"stats":{"checkinsCount":116,"usersCount":61},"hereNow":{"count":0}},{"id":"4cb59ee81b0af04dca42ca25","name":"Casa
    Del
    Campo","contact":{},"location":{"address":"Rue
    Lafayette","city":"Paris","state":"Ile-de-France","lat":48.873035,"lng":2.333235,"distance":26},"categories":[{"id":"4bf58dd8d48988d1db931735","name":"Tapas
    Restaurants","icon":"http://foursquare.com/img/categories/food/default.png","parents":["Food"],"primary":true}],"verified":false,"stats":{"checkinsCount":12,"usersCount":11},"hereNow":{"count":0}},{"id":"4cdd43c0d5495481874446b2","name":"Thalys
    Paris >
    Bruxelles","contact":{},"location":{"address":"111
    rue
    Lafayette","city":"Paris","state":"Ile-de-France","postalCode":"75011","lat":48.873035,"lng":2.333235,"distance":26},"categories":[{"id":"4bf58dd8d48988d12a951735","name":"Trains","icon":"http://foursquare.com/img/categories/travel/trainstation.png","parents":["Travel
    Spots","Train
    Stations"],"primary":true}],"verified":false,"stats":{"checkinsCount":5,"usersCount":5},"hereNow":{"count":0}},{"id":"4ba3d477f964a520226438e3","name":"Les
    Diamantaires","contact":{},"location":{"address":"60,
    Rue
    Lafayette","city":"Paris","state":"Ile-de-France","postalCode":"75009","lat":48.873035,"lng":2.333235,"distance":26},"categories":[{"id":"4bf58dd8d48988d115941735","name":"Middle
    Eastern
    Restaurants","icon":"http://foursquare.com/img/categories/food/middleeastern.png","parents":["Food"],"primary":true}],"verified":false,"stats":{"checkinsCount":11,"usersCount":10},"hereNow":{"count":0}},{"id":"4cbeb94297bc721e31158167","name":"Dentiste","contact":{},"location":{"address":"36
    bd
    haussmann","city":"Paris","state":"Ile-de-France","lat":48.8729985,"lng":2.3331688,"distance":31},"categories":[{"id":"4bf58dd8d48988d178941735","name":"Dentist's
    Offices","icon":"http://foursquare.com/img/categories/building/medical_dentist.png","parents":["Homes,
    Work, Others","Medical
    Centers"],"primary":true}],"verified":false,"stats":{"checkinsCount":9,"usersCount":2},"hereNow":{"count":0}},{"id":"4c098514bbc676b0365c48d5","name":"Best
    Place To Be
    Naked","contact":{},"location":{"lat":48.872859,"lng":2.333289,"distance":43},"categories":[],"verified":false,"stats":{"checkinsCount":36,"usersCount":21},"hereNow":{"count":0}},{"id":"4bbc55912d9ea5937878a0ce","name":"Pizza
    Tivoli","contact":{},"location":{"address":"5
    rue La
    Fayette","city":"Paris","state":"France","postalCode":"75009","lat":48.8733461,"lng":2.3340489,"distance":50},"categories":[{"id":"4bf58dd8d48988d110941735","name":"Italian
    Restaurants","icon":"http://foursquare.com/img/categories/food/default.png","parents":["Food"],"primary":true}],"verified":false,"stats":{"checkinsCount":62,"usersCount":47},"hereNow":{"count":0}},{"id":"4be11bf20f03a593908e18b4","name":"Pole
    Direction Nvx
    Medias","contact":{},"location":{"lat":48.872878,"lng":2.333277,"distance":42},"categories":[],"verified":false,"stats":{"checkinsCount":25,"usersCount":6},"hereNow":{"count":0}},{"id":"4c17d044834e2d7f94f02780","name":"Josefin","contact":{},"location":{"city":"Paris","state":"Ile-de-France","lat":48.872863,"lng":2.333273,"distance":43},"categories":[{"id":"4bf58dd8d48988d10c941735","name":"French
    Restaurants","icon":"http://foursquare.com/img/categories/food/default.png","parents":["Food"],"primary":true}],"verified":false,"stats":{"checkinsCount":14,"usersCount":8},"hereNow":{"count":0}},{"id":"4b597cfcf964a520e68928e3","name":"Siege
    Danone","contact":{},"location":{"address":"17
    boulevard
    hausmann","city":"Paris","lat":48.873557,"lng":2.334042,"distance":59},"categories":[{"id":"4bf58dd8d48988d124941735","name":"Offices","icon":"http://foursquare.com/img/categories/building/default.png","parents":["Homes,
    Work,
    Others"],"primary":true}],"verified":false,"stats":{"checkinsCount":23,"usersCount":13},"hereNow":{"count":0}},{"id":"4c1f5058fcf8c9b6f66bae0b","name":"Obene","contact":{},"location":{"address":"35
    rue saint
    lazarre","city":"Paris","state":"Francr","postalCode":"75009","lat":48.872829,"lng":2.333201,"distance":48},"categories":[{"id":"4bf58dd8d48988d1c0941735","name":"Mediterranean
    Restaurants","icon":"http://foursquare.com/img/categories/food/default.png","parents":["Food"],"primary":true}],"verified":false,"stats":{"checkinsCount":21,"usersCount":5},"hereNow":{"count":0}},{"id":"4d5133ac9ffc236a026720a7","name":"Sofa
    Cafe
    Studio","contact":{},"location":{"lat":48.873568,"lng":2.33384,"distance":48},"categories":[{"id":"4bf58dd8d48988d10c941735","name":"French
    Restaurants","icon":"http://foursquare.com/img/categories/food/default.png","parents":["Food"],"primary":true}],"verified":false,"stats":{"checkinsCount":11,"usersCount":10},"hereNow":{"count":0}},{"id":"4cfa4adf2d80a1438a9f43d8","name":"Manucurist","contact":{},"location":{"address":"Rue
    de la chausse d
    antin","city":"Paris","state":"Ile-de-France","lat":48.87294352054596,"lng":2.333693504333496,"distance":41},"categories":[{"id":"4bf58dd8d48988d10c951735","name":"Cosmetics
    Shops","icon":"http://foursquare.com/img/categories/shops/beauty_cosmetic.png","parents":["Shops"],"primary":true}],"verified":false,"stats":{"checkinsCount":28,"usersCount":4},"hereNow":{"count":0}},{"id":"4c7b90c9794e224bb48d6b28","name":"Le
    Galfa - La
    Fayette","contact":{},"location":{"lat":48.872853,"lng":2.333072,"distance":49},"categories":[{"id":"4bf58dd8d48988d10c941735","name":"French
    Restaurants","icon":"http://foursquare.com/img/categories/food/default.png","parents":["Food"],"primary":true}],"verified":false,"stats":{"checkinsCount":20,"usersCount":15},"hereNow":{"count":0}},{"id":"4c124b6377cea59338bccc60","name":"Noon","contact":{},"location":{"address":"Rue
    de la chaussee d
    antin","city":"Paris","state":"Ile-de-France","lat":48.8736428,"lng":2.3330026,"distance":51},"categories":[{"id":"4bf58dd8d48988d146941735","name":"Delis
    or
    Bodegas","icon":"http://foursquare.com/img/categories/food/deli.png","parents":["Food"],"primary":true}],"verified":false,"stats":{"checkinsCount":15,"usersCount":12},"hereNow":{"count":0}},{"id":"4bb2f78ea32876b0173a01fe","name":"Glam
    Media France (temp
    Offices)","contact":{},"location":{"address":"21
    bd
    Haussman","city":"Paris","lat":48.87305,"lng":2.333831,"distance":39},"categories":[{"id":"4bf58dd8d48988d125941735","name":"Tech
    Startups","icon":"http://foursquare.com/img/categories/building/default.png","parents":["Homes,
    Work,
    Others","Offices"],"primary":true}],"verified":false,"stats":{"checkinsCount":7,"usersCount":4},"hereNow":{"count":0}},{"id":"4c122cd7583c9c74bf323fa4","name":"Havaianas
    welcomes Summer @ Galeries
    Lafayette","contact":{"phone":"0142823456","twitter":"havaianaseurope"},"location":{"address":"40
    boulevard Haussmann","city":"75009
    Paris","state":"France","country":"France","lat":48.8731566,"lng":2.3327878,"distance":44},"categories":[{"id":"4bf58dd8d48988d107951735","name":"Shoe
    Stores","icon":"http://foursquare.com/img/categories/shops/apparel.png","parents":["Shops","Clothing
    Stores"],"primary":true}],"verified":true,"stats":{"checkinsCount":11,"usersCount":9},"hereNow":{"count":0}},{"id":"4b9a40c4f964a52081a735e3","name":"little
    georgette","contact":{},"location":{"lat":48.872544,"lng":2.33322,"distance":79},"categories":[{"id":"4bf58dd8d48988d10c941735","name":"French
    Restaurants","icon":"http://foursquare.com/img/categories/food/default.png","parents":["Food"],"primary":true}],"verified":false,"stats":{"checkinsCount":60,"usersCount":41},"hereNow":{"count":0}},{"id":"4c319736213c2d7f5e33345d","name":"Isiom","contact":{},"location":{"lat":48.872815,"lng":2.333228,"distance":49},"categories":[{"id":"4bf58dd8d48988d124941735","name":"Offices","icon":"http://foursquare.com/img/categories/building/default.png","parents":["Homes,
    Work,
    Others"],"primary":true}],"verified":false,"stats":{"checkinsCount":7,"usersCount":2},"hereNow":{"count":0}},{"id":"4c89f5e49ef0224b0595567b","name":"Cardiweb","contact":{},"location":{"city":"Paris","state":"Ile-de-France","lat":48.873727,"lng":2.33362,"distance":55},"categories":[{"id":"4bf58dd8d48988d124941735","name":"Offices","icon":"http://foursquare.com/img/categories/building/default.png","parents":["Homes,
    Work,
    Others"],"primary":true}],"verified":false,"stats":{"checkinsCount":5,"usersCount":3},"hereNow":{"count":0}},{"id":"4c507cf7991c20a18e014786","name":"Focus
    Groups","contact":{},"location":{"lat":48.872982,"lng":2.33353,"distance":31},"categories":[{"id":"4bf58dd8d48988d124941735","name":"Offices","icon":"http://foursquare.com/img/categories/building/default.png","parents":["Homes,
    Work,
    Others"],"primary":true}],"verified":false,"stats":{"checkinsCount":1,"usersCount":1},"hereNow":{"count":0}}]}]}}</p>
  </blockquote>