باحث JSONPath
اكتب تعبير JSONPath وشاهد فورًا القيم التي يحددها في JSON مع المسار المُطبَّع لكل نتيجة.
تتم المعالجة محليًا في متصفحك· بياناتك تبقى في متصفحك.
ما هي أداة باحث JSONPath؟
JSONPath لغة استعلام لـ JSON تشبه XPath في XML. يمشي تعبير مثل $.store.book[?(@.price < 10)].title على المستند ويعيد كل قيمة مطابقة، وهذا مفيد لاستخراج الحقول من استجابات API أو لكتابة التحققات في الاختبارات.
لدى هذه الأداة مقيِّمها الخاص المكتوب دون eval أو تنفيذ ديناميكي للشيفرة. تدعم $ و.key و['key'] و[n] والفهارس السالبة و[*] والنزول المتكرر (..) والاتحادات والشرائح [start:end:step] والمرشحات مع المقارنات و&& و|| و! والأقواس. تظهر النتائج كمصفوفة JSON وكقائمة مسارات مُطبَّعة مثل $['store']['book'][0]['title'].
كيف تعمل؟
- الصق مستند JSON في مربع الإدخال.
- اكتب JSONPath في حقل التعبير، مثل $..author أو $.items[?(@.qty > 1)].sku.
- اقرأ النتائج المطابقة (بصيغة JSON) وقائمة المسارات التي طابقتها.
- عدّل التعبير حتى يحدد بالضبط ما تحتاجه ثم انسخ الناتج.
حالات الاستخدام الشائعة
- استخراج حقل واحد من كل عنصر في استجابة API كبيرة.
- تجربة JSONPath قبل استخدامه في Postman أو تحقق REST أو استعلام Kubernetes.
- إيجاد المسار الدقيق لقيمة مدفونة في عمق مستند.
- تصفية السجلات حسب السعر أو الحالة أو الوسم دون كتابة سكربت.
أمثلة
جرّب هذا المدخل في الأداة أعلاه:
{"store":{"book":[{"title":"Sayings of the Century","author":"Nigel Rees","price":8.95,"category":"reference"},{"title":"Sword of Honour","author":"Evelyn Waugh","price":12.99,"category":"fiction"},{"title":"Moby Dick","author":"Herman Melville","price":8.99,"category":"fiction"}],"bicycle":{"color":"red","price":19.95}}}[ "Moby Dick" ]
الخصوصية
تعمل أداة باحث JSONPath بالكامل داخل متصفحك. يُعالَج النص أو الملفات التي تقدّمها على جهازك ولا تُرفع ولا تُسجَّل ولا تُخزَّن على خوادمنا.
القيود
هذه مجموعة جزئية عملية من JSONPath: لا تُدعم تعابير السكربت ولا التعابير النمطية ولا المرشحات المتداخلة، وقد تختلف الحالات الحدّية عن تنفيذات أخرى.
الأسئلة الشائعة
ما صيغة JSONPath المدعومة؟
الجذر $ والوصول إلى الأبناء بالنقطة والأقواس والفهارس [n] و[-n] والبدائل [*] و.* والنزول المتكرر .. والاتحادات مثل [0,2] أو ['a','b'] والشرائح والمرشحات مثل [?(@.price < 10 && @.category == 'fiction')] مع ==, !=, <, <=, >, >=.
هل من الآمن كتابة أي تعبير؟
نعم. يحلّل التعبير محلل مكتوب يدويًا ويقيّمه كود عادي: لا يُمرَّر شيء إلى eval فلا يمكن لتعبير خبيث تنفيذ شيفرة. ولا تُتَّبع أبدًا مفاتيح النموذج الأولي مثل __proto__ أو constructor.
ماذا يفعل مرشح يحتوي فقط على @.isbn؟
المسار المستخدم وحده داخل مرشح هو اختبار وجود: تبقى العناصر التي لديها خاصية isbn وتُستبعد البقية.
أدوات ذات صلة
عارض JSON
استعرض مستند JSON كشجرة قابلة للتوسيع بدل جدار من النص، مع ملخص لبنيته.
JSON والبيانات
منسّق JSON
حوّل مستند JSON المضغوط أو غير المرتب إلى نص مقروء ومنسّق بمسافات متسقة، مع رسالة خطأ دقيقة إذا كان JSON غير صالح.
JSON والبيانات
مدقق JSON
تحقق مما إذا كان النص JSON صالحًا وحدد الحرف الدقيق الذي يحدث عنده الخطأ.
JSON والبيانات
JSON إلى TypeScript
الصق عينة JSON واحصل على تعريفات TypeScript جاهزة للاستخدام تصف بنيتها.
JSON والبيانات
ترتيب مفاتيح JSON
أعد ترتيب مفاتيح كل كائن JSON أبجديًا للحصول على مستند ثابت وقياسي.
JSON والبيانات
مقارنة JSON (Diff)
الصق مستندي JSON لترى ما تغيّر في البيانات بصرف النظر عن ترتيب المفاتيح أو المسافات البادئة.
JSON والبيانات