假设有几个多类div,如以下HTML所示:
<div class="class_one class_two class_three classfour classfive classsix">
<div class="class_one class_two class_three classfour classfive">
<div class="class_one class_two class_three classfour classsix">
是否有一个Jsoup选择表达式会选择所有3个?
为了澄清,认为“最低共同点”将选择全部3,我尝试了以下内容:
div[class=class_one class_two class_three classfour]
但是它选择了无!
另一方面,使用完整的多选语法有效,但它只能选择上述之一,例如:
div[class=class_one class_two class_three classfour classfive classsix]
有没有办法使用单 Jsoup select语句选择所有3个?
答案 0 :(得分:3)
这不是特定于Jsoup,而是特定于CSS。 [attribute=name]
选择器执行完全匹配。即使订购也很重要。您想在此处使用.classname
选择器。以下应该有效:
Elements divs = document.select("div.class_one.class_two.class_three.classfour");
// ...
请注意,类名的排序与此无关。此选择器选择具有所有给定类名的所有<div>
元素。