gpt4 book ai didi

javascript - 如果 URL 包含 6 位数字值并且包含 .pdf、.doc、.xls 等,则将数字值 append 到类中

转载 作者:太空宇宙 更新时间:2023-11-04 15:53:45 24 4
gpt4 key购买 nike

这是对我之前提出的问题的补充,但包含一些我无法解决的额外问题。我再次四处搜寻,如果这个问题得到解答,我深表歉意。我仍在学习中,所以请放轻松。

下面的代码正确地在 URL 中查找 6 位数字值,并将该数字值和“pdf”作为一个类添加到 href。

var regex = /[0-9]{1,6}/;
$('a').each(function() {
$(this).addClass('pdf' + regex.exec($(this).attr("href"))[0]);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<a href="https://www.pdflinks.com/files/190488/nameoffile.pdf">Link1</a>
<a href="https://www.pdflinks.com/files/112254/nameoffile.pdf">Link2</a>

问题1
如何检查 6 位数字值以及 URL 是否包含任何文档扩展名类型,例如 .pdf、.doc、.xls 大写或小写等?我已经尝试过以下操作,但我的正则表达式运算符似乎遇到了问题。我还尝试用“正向前瞻”断言来分隔表达式,但没有成功。

var regex = /[0-9]{1,6}/\.(pdf|doc|docx|ppt|pptx|xls|slxs|epub|odp|ods|txt|rtf)$/i;
$('a').each(function() {
$(this).addClass('pdf' + regex.exec($(this).attr("href"))[0]);
});

问题2
如果页面包含不合格 URL 的链接(无 6 位数字值或文档扩展名),则该功能将在此停止,并且不会检查其他链接。 (下面的示例)我怎样才能使代码检查并跳过非限定符并覆盖与正则表达式匹配的所有链接?

var regex = /[0-9]{1,6}/;
$('a').each(function() {
$(this).addClass('pdf' + regex.exec($(this).attr("href"))[0]);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<a href="https://www.pdflinks.com/files/190488/nameoffile.pdf">Link1</a><br>
<a href="https://www.pdflinks.com/files/112254/nameoffile.pdf">Link2</a><br>
<a href="https://www.pdflinks.com/files/nameoffile.pdf">Link3</a><br>
<a href="https://www.pdflinks.com/files/145254/nameoffile.pdf">Link4</a><br>
<a href="https://www.pdflinks.com/files/154254/nameoffile.pdf">Link5</a><br>

提前再次感谢您。

最佳答案

请尝试这个:

var regex = /\/([0-9]{1,6})\//ig;
$('a').each(function() {
if ( !this.href.match(regex) ) return;
$(this).addClass('pdf' + regex.exec($(this).attr("href"))[1]);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<a href="https://www.pdflinks.com/files/190488/nameoffile.pdf">Link1</a><br>
<a href="https://www.pdflinks.com/files/112254/nameoffile.pdf">Link2</a><br>
<a href="https://www.pdflinks.com/files/nameoffile.pdf">Link3</a><br>
<a href="https://www.pdflinks.com/files/145254/nameoffile.pdf">Link4</a><br>
<a href="https://www.pdflinks.com/files/154254/nameoffile.pdf">Link5</a><br>

更新:2017 年 3 月 21 日

$(document).ready(function() {

// Executes when the HTML document is loaded and ONLY the DOM is ready
alert("Document is ready");
});

// .load() method deprecated from jQuery 1.8 onward
$(window).on("load", function() {

// Executes when complete page is fully loaded, including
// all frames, objects and images
// This is what you need
alert("Window is loaded");
});

关于javascript - 如果 URL 包含 6 位数字值并且包含 .pdf、.doc、.xls 等,则将数字值 append 到类中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42886308/

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