我想为特定的文本字符串获取最小的CSS树(不确定这是否是正确的术语)。
CSS树是指一组选择器,用于识别特定文本(或同一级别的任何内容 - 如果有一个具有相同CSS的项目列表,那么可以全部获取它们。)
例如,假设我们有以下HTML:
<html>
<body>
<div id="someDivs">
<div class="a-row">My text</div>
<div class="a-row">Your text</div>
</div>
<div id="someOtherDivs">
<div class="main-div">Some other text</div>
</div>
</body>
</html>
如果我将输入指定为My text
,那么minimal css tree
将只是.a-row
(这将匹配多个项目,但没关系)。
但是,如果HTML看起来像:
<html>
<body>
<div id="someDivs">
<div class="a-row">My text</div>
<div class="a-row">Your text</div>
</div>
<div id="someOtherDivs">
<div class="main-div">
<div class="a-row">Some other text</div>
</div>
</div>
</body>
</html>
然后输入My text
的最小CSS树将是#someDivs,.a-row
我认为Javascript是最简单的,但是我很擅长技术,如果有更好的方法使用后端技术(pref Java,但python等也很好),那么这不是问题。
编辑:重要的是我正在尝试获取选择器的实际文本值,而不仅仅是获取可用于选择这些项的变量(在JS中)。