Вам не потрібно використовувати jQuery. Звичайний JavaScript підійде. Я б не рекомендував жодну бібліотеку, яка переносить стандарти XML на JavaScript, і мене розчарувало, що для цього не існує жодного іншого рішення, тому я написав власну бібліотеку.
Я адаптував регулярний вираз для роботи з JSON.
Спочатку розшифруйте об’єкт JSON. Потім вам потрібно зберегти старти та довжини відповідних підрядків. Наприклад:
"matched".search("ch")
Для рядка JSON це працює точно так само (якщо ви явно не шукаєте коми і фігурні дужки, і в цьому випадку я б рекомендував попереднє перетворення вашого об'єкта JSON перед виконанням регулярного виразу (тобто подумайте:, {,}).
Далі вам потрібно реконструювати об’єкт JSON. Алгоритм, автором якого я є, робить це шляхом виявлення синтаксису JSON шляхом рекурсивного повернення назад від індексу відповідності. Наприклад, псевдокод може виглядати наступним чином:
find the next key preceding the match index, call this theKey
then find the number of all occurrences of this key preceding theKey, call this theNumber
using the number of occurrences of all keys with same name as theKey up to position of theKey, traverse the object until keys named theKey has been discovered theNumber times
return this object called parentChain
З цією інформацією можна використовувати регулярний вираз для фільтрації об’єкта JSON для повернення ключа, значення та батьківського ланцюжка об’єктів.
Ви можете побачити бібліотеку та код, автором якого я є, на http://json.spiritway.co/