正则匹配字符串里的a标签

当后台返回一大段富文本给我们的时候,我想取出里面所有的a标签,在网上找了很多文章,发现没有写的太好的

所以自己写了一个,主要作用是匹配a标签和里面的href,实际上一个完整的a标签上可能包含很多东西

比如href,target,class,style,name,title,诸如此类一堆的东西,所以想完整的匹配不太现实,

我主要匹配href

代码如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    

<script>

var str=`
<div>
    <A href="www.baidu.com/"></A>
    <a href="http://www.baidu1.com/"></a>
    <a href='https://www.baidu2.com/'></a>
</div>`;

var aHrefRegExp =  /<a[^>]+href=['"]([^'"]*)['"]>/gi;

var httpRegExp = /(http|https)/;
    
var arr=str.toLowerCase().match( aHrefRegExp );

for(var i = 0; i < arr.length; i++){ 

    var ss = arr[i].toLowerCase().match( aHrefRegExp );
    
    var temp = RegExp.$1;
    
    if( httpRegExp.test( temp ) ){
        console.log( '有http '+ temp );
    }else{
        console.log( '没有http '+ temp );
    }

} 
</script>             
</body>
</html>

猜你喜欢

转载自www.cnblogs.com/carol1987/p/10594056.html
今日推荐