Получить все значения JSON, фильтры



  • Получаю от сервера информацию о пользователях.
    Меня интересуют только пользователи указавшие свою дату рождения и что бы она совпадала с текущим днём.

    Получаю ответ от сервера:

    {"response":{"count":10,"items":[{"first_name":"Виталий","id":23805,"last_name":"Егоров","can_access_closed":true,"is_closed":false,"bdate":"13.6.1993"},{"first_name":"Александр","id":50342,"last_name":"Шихов","can_access_closed":true,"is_closed":false,"bdate":"11.4"},{"first_name":"Алёна","id":69226,"last_name":"Батенчук","can_access_closed":false,"is_closed":true,"bdate":"15.1.1989"},{"first_name":"Саша","id":80420,"last_name":"Запольская","can_access_closed":true,"is_closed":false,"bdate":"16.12.1985"},{"first_name":"Мария","id":116598,"last_name":"Клеймёнова","can_access_closed":true,"is_closed":false,"bdate":"22.7"},{"first_name":"Александр","id":129623,"last_name":"Клевин","can_access_closed":true,"is_closed":false},{"first_name":"Андрей","id":191647,"last_name":"Карканица","can_access_closed":true,"is_closed":false,"bdate":"14.5.1967"},{"first_name":"Денис","id":248069,"last_name":"Арнаускас","can_access_closed":true,"is_closed":false,"bdate":"5.2.1988"},{"first_name":"Оксана","id":261056,"last_name":"Тераз","can_access_closed":true,"is_closed":false,"bdate":"25.6"},{"first_name":"Сергей","id":275274,"last_name":"Яшанов","can_access_closed":true,"is_closed":false,"bdate":"9.9.1984"}]}}
    

    Получаю все значения JSON (Только тех у кого установлена дата рождения)

    $..items[?(@.bdate)] 
    

    Всё работает, но можно ли как то применить фильтр к запросу?

    Так не работает, хотя на проверочных сайтах выдаёт результаты:

    $..items[?(@.bdate =~ /4\.11.*/)]
    


  • Try this >

    $.[?(/11\.4/.test(@.bdate))]
    

    or

    $.[?(/11\.4/.exec(@.bdate))]
    

    Both works properly on test site



  • @GaG said in Получить все значения JSON, фильтры:

    Try this >

    $.[?(/11\.4/.test(@.bdate))]
    

    or

    $.[?(/11\.4/.exec(@.bdate))]
    

    Both works properly on test site

    Всё работает! Спасибо большое, учту на будущее.
    А пока нашёл другую реализацию своей задачи)


Log in to reply
 

  • 5
  • 23
  • 2
  • 13
  • 2
  • 3
  • 3
  • 2