gpt4 book ai didi

javascript - 如何使用 querySelectorAll() 搜索以数字结尾的 href

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:10:38 26 4
gpt4 key购买 nike

我正在寻找以数字结尾的所有元素。例如,我们有一个 <a>有了这个 href。

href="artist.php?id=8932

现在我可以通过以下方式获得 href 的所有出现:

document.querySelectorAll("[href^='artist.php?id=']")

然而,这也给我结果,例如

artist.php?id=8932#comments

所以我想要的是我只能将以数字结尾的 hrefs 获取到数组。我真的不想先用所有结果创建数组,然后清理 #extras 并删除重复项。

请注意,我现在没有也不会不使用 jQuery。

最佳答案

由于 querySelectorAll 不接受正则表达式,因此无法使用 css 选择器检查 href 是否以数字结尾。但是您可以使用 .filter.match 简单地过滤所有以数字结尾的 href。

let links = [...document.querySelectorAll("[href^='artist.php?id=']")].filter(a => a.href.match(/\d+$/));
console.log(links);
<a href="artist.php?id=123"></a>
<a href="artist1.php?id=123"></a>
<a href="artist.php?id=123#comment"></a>
<a href="artist.php?id=abc"></a>
<a href="artist.php?id=abc123"></a>

关于javascript - 如何使用 querySelectorAll() 搜索以数字结尾的 href,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48980092/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com