এই এক্সএমএল প্রদত্ত, এক্সপথ সমস্ত উপাদানকে কী ফিরিয়ে দেয় যার prop
বৈশিষ্ট্যযুক্ত Foo
(প্রথম তিনটি নোড):
<bla>
<a prop="Foo1"/>
<a prop="Foo2"/>
<a prop="3Foo"/>
<a prop="Bar"/>
</bla>
এই এক্সএমএল প্রদত্ত, এক্সপথ সমস্ত উপাদানকে কী ফিরিয়ে দেয় যার prop
বৈশিষ্ট্যযুক্ত Foo
(প্রথম তিনটি নোড):
<bla>
<a prop="Foo1"/>
<a prop="Foo2"/>
<a prop="3Foo"/>
<a prop="Bar"/>
</bla>
উত্তর:
//a[contains(@prop,'Foo')]
ফলাফলগুলি ফিরে পেতে যদি আমি এই এক্সএমএলটি ব্যবহার করি তবে কাজ করে।
<bla>
<a prop="Foo1">a</a>
<a prop="Foo2">b</a>
<a prop="3Foo">c</a>
<a prop="Bar">a</a>
</bla>
সম্পাদনা: অন্য একটি বিষয় লক্ষণীয় হ'ল উপরের এক্সপথ সেই নির্দিষ্ট এক্সএমএলটির সঠিক উত্তরটি ফিরিয়ে দেবে, আপনি যদি গ্যারান্টি দিতে চান তবে কেবল "এল" উপাদানটিতে "এল" উপাদান পাবেন, অন্যরাও যেমন উল্লেখ করেছেন তেমন ব্যবহার করা উচিত
/bla/a[contains(@prop,'Foo')]
এটি "ব্লা" উপাদানটিতে বাসা বাঁধার জন্য নির্বিশেষে আপনার পুরো xML ডকুমেন্টের সমস্ত "a" উপাদান অনুসন্ধান করবে
//a[contains(@prop,'Foo')]
আমি এটি পুঙ্খানুপুঙ্খতার জন্য এবং স্ট্যাকওভারফ্লোয়ের চেতনায় যুক্ত করেছি। :)
xmlme.com
এখন অন্য কিছু হোস্টে পুনঃনির্দেশ করে এবং সরঞ্জাম বা এর মতো কিছু হোস্ট করে না।
এই এক্সপথটি আপনাকে নোডের নাম বা বিশিষ্ট নাম নির্বিশেষে 'ফু' যুক্ত বৈশিষ্ট্যযুক্ত এমন সমস্ত নোড দেবে:
//attribute::*[contains(., 'Foo')]/..
অবশ্যই আপনি যদি গুনের বিষয়বস্তুগুলিতে নিজেরাই আগ্রহী হন এবং তাদের পিতামাতার নোডের প্রয়োজন না হয় তবে কেবল / .. বাদ দিন ..
//attribute::*[contains(., 'Foo')]
//@*[contains(., 'Foo')]
descendant-or-self::*[contains(@prop,'Foo')]
বা:
/bla/a[contains(@prop,'Foo')]
বা:
/bla/a[position() <= 3]
ব্যবচ্ছেদ:
descendant-or-self::
অক্ষ - নীচের প্রতিটি নোড এবং নিজেই নোডের মাধ্যমে অনুসন্ধান করুন। এটি // এর চেয়ে প্রায়শই বলা ভাল। আমি কিছু বাস্তবায়নের মুখোমুখি হয়েছি যেখানে // এর অর্থ যে কোনও জায়গায় (মূল নোডের ছদ্মবেশী বা স্ব)। অন্যরা ডিফল্ট অক্ষ ব্যবহার করে।
* or /bla/a
ট্যাগ - একটি ওয়াইল্ডকার্ড ম্যাচ, এবং / ব্লে / এ একটি পরম পথ।
[contains(@prop,'Foo')] or [position() <= 3]
শর্ত [] এর মধ্যে। @prop অ্যাট্রিবিউট :: প্রোপ এর শর্টহ্যান্ড, কারণ অ্যাট্রিবিউট অন্য অনুসন্ধান অক্ষ search বিকল্পভাবে আপনি পজিশন () ফাংশনটি ব্যবহার করে প্রথম 3 টি নির্বাচন করতে পারেন।
জন সি সবচেয়ে কাছের, তবে এক্সপথ কেস সংবেদনশীল, তাই সঠিক এক্সপথটি হ'ল:
/bla/a[contains(@prop, 'Foo')]
আপনি কি এরকম কিছু চেষ্টা করেছেন:
// এ [রয়েছে (@ পপ, "ফু")]
আমি এর আগে এই ফাংশনটি আগে কখনও ব্যবহার করি নি তবে সন্দেহ হয় যে এটি বিজ্ঞাপন হিসাবে কাজ করা উচিত ...
আপনি যদি নিজেই লিঙ্কটির বিষয়বস্তু মেলে প্রয়োজন হয়, পাঠ্য () ব্যবহার করুন:
//a[contains(@href,"/some_link")][text()="Click here"]
এটা চেষ্টা কর:
// একটি [ধারণ করে (@ ঠেকনা, 'foo বিন্যাস')]
এটি নথিতে যে কোনও "a" ট্যাগের জন্য কাজ করা উচিত