কীভাবে ব্যবহার করবেন
- বাম দিকে JSON পেস্ট করুন, অথবা নমুনা ডেটা রেখে দিন।
- উপরে একটি JSONPath এক্সপ্রেশন লিখুন, অথবা উদাহরণ এক্সপ্রেশনগুলোর একটি ক্লিক করুন।
- টাইপ করার সঙ্গে সঙ্গে ডান দিকে মিলগুলো দেখা যাবে। প্রতিটি মিল ডকুমেন্টের কোথায় আছে তা দেখতে `পাথ দেখান` ক্লিক করুন।
অপশনগুলোর ব্যাখ্যা
- $ এবং @
- $ হল root node; @ হল filter-এর ভিতরের current node, যেমন [?(@.price < 10)]।
- . এবং ..
- .name একটি child নোড নির্বাচন করে; ..name প্রতিটি স্তরে name নামের নোড খোঁজে।
- [*], [0,1], [-1:]
- ওয়াইল্ডকার্ড, একাধিক ইনডেক্স ও স্লাইস (Python slice-এর মতো; ঋণাত্মক সংখ্যা শেষ দিক থেকে গণনা করে)।
- [?(...)]
- ফিল্টার এক্সপ্রেশনে তুলনা (== != < <= > >=), লজিক (&& || !) এবং [?(@.isbn)]-এর মতো অস্তিত্ব যাচাই ব্যবহার করা যায়।
সাধারণ এক্সপ্রেশন
| এক্সপ্রেশন | অর্থ |
|---|---|
$.store.book[*].author |
সব বইয়ের লেখকরা |
$..price |
ডকুমেন্টের প্রতিটি মূল্য |
$..book[?(@.price < 10)].title |
10-এর কম দামের বইগুলোর শিরোনাম |
$..book[-1:] |
শেষ বইটি |
$..book[0,1].title |
প্রথম দুইটি বইয়ের শিরোনাম |
$..book.length |
বইয়ের সংখ্যা |
সচরাচর জিজ্ঞাসিত প্রশ্ন
কোন JSONPath সিনট্যাক্স সমর্থিত?
jsonpath-plus দ্বারা বাস্তবায়িত Goessner-রীতির সিনট্যাক্স—Jayway (Java), অধিকাংশ অনলাইন টুল ও API টেস্টিং সফটওয়্যারে ব্যবহৃত একই রীতি। কিছু বিষয়ে এটি RFC 9535 (2024) থেকে আলাদা, যেমন ফিল্টার এক্সপ্রেশন।
ফিল্টার এক্সপ্রেশন কি JavaScript চালাতে পারে?
না। ফিল্টারগুলো একটি নিরাপদ মোডে মূল্যায়ন করা হয়; সেখানে শুধু প্রপার্টি অ্যাক্সেস, তুলনা ও লজিক অনুমোদিত, নির্বিচারে কোড চালানো যায় না।
ফলাফল সবসময় একটি অ্যারে কেন?
একটি JSONPath এক্সপ্রেশন একাধিক নোডের সঙ্গে মিলতে পারে, তাই ফলাফল সবসময় একটি অ্যারে; একটিমাত্র মিল হলেও অ্যারেটিতে একটি আইটেম থাকে।
আমার JSON কি আপলোড হয়?
না। পার্সিং ও কুয়েরি চালানো আপনার ব্রাউজারেই হয়।
গোপনীয়তা
এই টুলটি পুরোপুরি আপনার ব্রাউজারে চলে। আপনার ফাইল ও লেখা আপনার ডিভাইসেই প্রসেস হয় এবং কখনো আমাদের সার্ভারে আপলোড হয় না।