求助,尝试了好多次没有成功啊。我想将这段匹配 <img src="face/$1.gif" border="0">,string.replace("正则表达式",""),匹配0个或多个替换为空,求大神写正则表达式!
/<img.*>/gi 这种简单的正则行不?
这个是实现的这样
<html>
<body>
<script type="text/javascript">
var str = "哈哈哈<img src=\"face/$1.gif\" border=\"0\"><img src=\"face/$1.gif\" border=\"0\"> <img src=\"face/$1.gif\" border=\"0\">";
var rr = str.replace(/<img.*>/gi, "");
document.write(rr);
</script>
</body>
</html>
哈哈哈能输出,但是放在两个<img>直接就输出不了了,这样是也<img>开头的全换成“”了,我想要的结果是遍历这个字符串将里面<img>全过滤掉
@那年的冬天:
/<img.*?>/gi 懒匹配。
@幻天芒: 有没有什么好的方法可以将除了<img>之外的字符串保留下来呢,大神
@那年的冬天: 用jquery包装成jquery对象,然后移除所有的img元素,然后在取text。
@幻天芒: $("#id").find("img").remove(); var =$("#id").val();类似这种?
@幻天芒: $("#id").find("img").remove(); var b=$("#id").val();类似这种?
@那年的冬天:
var str = '哈哈哈<img src=\"face/$1.gif\" border=\"0\"><img src=\"face/$1.gif\" border=\"0\"> <img src=\"face/$1.gif\" border=\"0\">'; var $el = $(`<div>${str}</div>`); $el.find('img').remove(); $el.text();
@幻天芒: content 是String类型,尝试了一下 最后alert(content) 输出的是{content},$(`<div>${str}</div>`) 按您的这个,它报不能识别``这个。
@那年的冬天: 那是ES6的语法。你可以使用'<div>' + str + '</div>'
搞定了!! 强啊
<img\s+src="face\/\$1\.gif"\s+border="0">
<html>
<body>
<script type="text/javascript">
var str="12323<img src="face/$1.gif" border="0">"
document.write(str.replace(/<img\s+src="face\/\$1\.gif"\s+border="0">/,""))
</script>
</body>
</html>
理想输出 12323,但是没有输出啊。。。没有匹配成功
@那年的冬天:
你的str有问题如何输出