使用js写一个函数,使用"ZD11557645"为关键字,快速提取"08:00-08:30"字符串。 <a class="" href="javascript:toRegd('/wxwith/regd/confirmRegd','2024-07-22','ZD11557645','ZS1140315','ZD11557645')"><div class="time_slot">08:00-08:30</div><div class="time_rest"><div class="rest_left">余号:4</div><div class="rest_right">¥ 36.00</div></div></a>
要在JavaScript中提取特定关键字(如"ZD11557645")并获取相应的时间段(如"08:00-08:30"),可以使用正则表达式和DOM操作来实现。以下是一个示例函数:
function extractTimeSlot(htmlString, keyword) {
// 创建一个临时的DOM元素来解析HTML字符串
var tempDiv = document.createElement('div');
tempDiv.innerHTML = htmlString;
// 查找所有的<a>标签
var links = tempDiv.getElementsByTagName('a');
for (var i = 0; i < links.length; i++) {
var link = links[i];
var href = link.getAttribute('href');
// 检查href中是否包含关键字
if (href && href.includes(keyword)) {
// 查找包含时间段的<div>标签
var timeSlotDiv = link.querySelector('.time_slot');
if (timeSlotDiv) {
return timeSlotDiv.textContent.trim();
}
}
}
// 如果没有找到匹配的时间段,返回null
return null;
}
// 示例HTML字符串
var htmlString = `<a class="" href="javascript:toRegd('/wxwith/regd/confirmRegd','2024-07-22','ZD11557645','ZS1140315','ZD11557645')"><div class="time_slot">08:00-08:30</div><div class="time_rest"><div class="rest_left">余号:4</div><div class="rest_right">¥ 36.00</div></div></a>`;
// 关键字
var keyword = "ZD11557645";
// 调用函数并输出结果
var timeSlot = extractTimeSlot(htmlString, keyword);
console.log(timeSlot); // 输出: 08:00-08:30
这个函数的工作原理如下:
div
元素,并将HTML字符串设置为其内容。<a>
标签。<a>
标签,检查其href
属性是否包含指定的关键字。<a>
标签,查找其子元素中包含时间段的<div>
标签,并返回其文本内容。null
。你可以将这个函数应用于任何包含类似结构的HTML