替换dom变量中的href值

var dstr='

 demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demotable1 test demo test demo test demo test demo test demo table2 demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test 

';

我必须找到所有href属性,其中“table”字符串应该存在,例如:href =“#table1(t1)”然后我必须用括号中的字符串替换它,例如:href =“t1”

如果我理解正确,你需要这个:

 var re = /(#table\d+)|\((\w{1,2})(\))/g; var str = '

 demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test demotable1 test demo test demo test demo test demo test demo table2 demo test demo test demo test demo test demo test demo test demo test demo test demo test demo test 

'; var subst = '$2'; var result = str.replace(re, subst); console.log(result);

Regex101演示: https ://regex101.com/r/uP6uY7/1

希望能帮助到你:

 var href1=document.getElementsByTagName('a'); for(i=0;i=0) { var str=val.substring(val.lastIndexOf('(')+1,val.lastIndexOf(')')); href[i].setAttribute('href',str); } } 

这是一种方法:

 $init = $('a[href*="table"]').attr('href'); $('a[href*="table"]').attr('href',$init.substring($init.lastIndexOf('(')+1,$init.lastIndexOf(')'))); 

jsfiddle: https ://jsfiddle.net/vxpyyy15/3/