我有一组像这样的字符串:
"Lorem Ipsum dolor sit amet, 6:13 p.m - <a href='tel:5555'>555-5</a> / <a href='tel:7777'>777-7</a>"
<a></a>
标签的数量是可变的,在我的示例中我需要返回“5555”和“7777”
在JavaScript中实现这一目标的最佳方式是什么以及如何?
谢谢!
答案 0 :(得分:1)
只需让JS(或jQuery)解析HTML,找到a
元素并阅读他们的href
属性。
E.g。
var hrefs = $($.parseHTML(str)).filter('a').map(function() {
return this.href;
}).get();
// gives an array like ['tel:5555', 'tel:7777'] which you can process further
总而言之,为了使其更可靠并提取数字,您可以这样做:
function parseTel(str) {
str = '<div>' + str + '</div>';
return $($.parseHTML(str)).find('a[href^="tel:"]').map(function() {
return +this.href.split(':')[1];
}).get();
}