87,907
社区成员
发帖
与我相关
我的任务
分享
<a href="1">dsrfewfdsf</a>
<a href="2">dsfdsf</a>
<a href="3">dsfdsafef</a>
<a href="4">dsfdfdssf</a>
<a href="1">dsrfewfdsf</a>
<a href="2">dsfdsf</a>
<a href="3">dsfdsafef</a>
<script type="text/javascript">
var b = '<v:shape style="1">111111<v:fill></v:fill></v:shape>\n<v:shape style="2">222222<v:fill></v:fill></v:shape>\n<v:shape style="3">333333<v:fill></v:fill></v:shape>\n<v:shape style="4">444444<v:fill></v:fill></v:shape>';
String.prototype.r = function(key) {
// var reg = /(?=<v:shape).*?<\/v:shape>((?:.|\s)(?!<v:shape))?$/i;
var reg = new RegExp('(?=<' + key + ').*?<\/' + key + '>((?:.|\s)(?!<' + key + '))?$', 'i');
return this.replace(reg, '$1');
}
console.log(b.r('v:shape'));
</script>
var b = '<v:shape style="1">111111<v:fill></v:fill></v:shape>\n<v:shape style="2">222222<v:fill></v:fill></v:shape>\n<v:shape style="3">333333<v:fill></v:fill></v:shape>\n<v:shape style="4">444444<v:fill></v:fill></v:shape>';
String.prototype.r = function(key) {
var reg = new RegExp('<(' + key + ')[^>]*>.*?<\\/\\1>', 'img');
return this.replace(reg, function(v) {
return (RegExp.rightContext.match(reg) == null)? '' : v;
});
}
alert(b.r('v:shape'));
<div id="div">
<a href="1">dsrfewfdsf</a>
<a href="2">dsfdsf</a>
<a href="3">dsfdsafef</a>
<a href="4">dsfdfdssf</a>
</div>
<script language="javascript">
var html = document.getElementById("div").innerHTML;
var regex = /<[^\/]*?>\w*<\/[^<]*>[\s]*$/;
html = html.replace(regex,"");
alert(html)
</script>
html = '<v:shape style="1">111111<v:fill></v:fill></v:shape>\n<v:shape style="2">222222<v:fill></v:fill></v:shape>\n<v:shape style="3">333333<v:fill></v:fill></v:shape>\n<v:shape style="4">444444<v:fill></v:fill></v:shape>asdfsadf';
var regstr = "<v:shape[^>]+>.*?</v:shape>\\n?",
reg1 = new RegExp("("+ regstr + ")+", "g"),
reg2 = new RegExp(regstr + "$");
html = html.replace(reg1, function($){
return $.replace(reg2, "");
})
console.log(html)
<div id ="layer1">
<a href="1">dsrfewfdsf</a>
<a href="2">dsfdsf</a>
<a href="3">dsfdsafef</a>
<a href="4">dsfdfdssf</a>
asdfasdf
</div>
<script>
var html = document.getElementById("layer1").innerHTML,
reg = /(<a[^>]+>.*?<\/a>\n?)+/g;
html = html.replace(reg, function($, $1){
//reg.lastIndex -= $1.length
console.log(arguments)
return $.replace(/<a[^>]+>.*?<\/a>\n$/g,"");
});
console.log(html)
</script>
var s = '<v:shape style="1">111111<v:fill></v:fill></v:shape>\n<v:shape style="2">222222<v:fill></v:fill></v:shape>\n<v:shape style="3">333333<v:fill></v:fill></v:shape>\n<v:shape style="4">444444<v:fill></v:fill></v:shape>';
String.prototype.removeLastOne = function(key) {
var i = j = 0;
var reg = new RegExp('<(' + key + ').*?>[.\n]*?<\\/\\1>', 'gim');
return this.replace(reg, function(v) {
i++;
return v;
}).replace(reg, function(v) {
j++;
return (j == i)? '' : v;
});
}
alert(s.removeLastOne('v:shape'));