我模糊地了解了正则表达式如何在我的上一个问题上提前工作,并认为我可以将其与其他字符串一起使用。显然事实并非如此。以下是名为mqcontainer
的div的内容。
<a style="text-decoration:none;" href="http://i.imgur.com/TeC4R.png"><img src="http://i.imgur.com/TeC4R.png" alt="Posted Image">[br]<small></small></a><small><a href="http://i.imgur.com/TeC4R.png" class="view_full">View Full Image</a></small>
我的目标是过滤掉这个字符串,以便在我点击按钮时显示[url=http://i.imgur.com/TeC4R.png]Image[/url]
。这就是我一直在尝试的:
$("#containerbtn").click(function(){
$("#mqcontainer").each(function(){
$(this).html(
$(this).html().replace(
/<a style="text-decoration:none;" href="(.*?)"><img src=".*?" alt="Posted Image">\[br\]<small><\/small><\/a><small><a href=".*?" class="view_full">View Full Image<\/a><\/small>/g,
'[url=$1]Image[/url]'
)
);
});
});
无论我尝试什么,它都无法正常工作。谁能让我对这个问题有所了解?
答案 0 :(得分:3)
[br]
应该在正则表达式\[br\]
答案 1 :(得分:1)
<强>错误:强>
$("#mqcontainer").each(function(){
$(this).html(
...
)};
)};
上面的代码不正确。由于只有一个ID为mqcontainer
的div。
试试这个:
$("#mqcontainer").html(
$("#mqcontainer").html().replace(/<a style="text-decoration:none;" href="(.*?)"><img src=".*?" alt="Posted Image">\[br\]<small><\/small><\/a><small><a href=".*?" class="view_full">View Full Image<\/a><\/small>/g, '[url=$1]Image[/url]')
);
答案 2 :(得分:0)
<a style="text-decoration:none;" href="(.*?)"><img src=".*?" alt="Posted Image">\[br\]<small><\/small><\/a><small><a href=".*?" class="view_full">View Full Image<\/a><\/small>
上述情况应该有效。
我删除了一个无关的],这是在你的图像之后和逃脱[br]之前。
编辑:添加一条注释,看到上面的powtac评论后查看修订历史记录实际上是您在修改建议时引入的错误。