我正在尝试使用正则表达式来查找网站中的类别。我输入了(?<=class="category-section" data-id=")(.*)(?=" id="nav),但它将整个字符串返回给我,我看到它从data-id="之后的第一个模式开始,直到结束模式具有" id="nav
例如:
<div class="category-section" data-id="Motors" id="nav-1">
<div class="category-section" data-id="Fashion" id="nav-2">我本想让“汽车”和“时尚”杂志参加比赛,但它会回来的。
Motors" id="nav-1"> <div class="category-section" data-id="Fashion我不明白...
发布于 2017-09-19 04:34:05
试试这个:
data-id=".*?"
它将返回两个匹配项,然后对应于data-id="Motors"和data-id="Fashion"。
因此,您可以替换data-id=和" sings来获得您想要的值,即内部属性。
编辑1:
通过使用简单的js函数,您可以检索此值:
<div class="category-section" data-id="Motors" id="nav-1">Content1</div>
<div class="category-section" data-id="Fashion" id="nav-2">Content2</div>
<script>
(function() {
var data = document.getElementsByClassName('category-section');
for (var i = 0; i < data.length; i++) {
console.log(data.item(i).getAttribute('data-id'));
}
})();
</script>输出:
Motors
Fashionhttps://stackoverflow.com/questions/46287708
复制相似问题