正则表达式:从“内容”中排除html标签

时间:2014-03-07 19:57:38

标签: javascript regex

一位朋友问我这个问题,因为我对RegExp的了解并不是很好。我在这里。

如何从此字符串中排除HTML标记?

re<br>na<br>to<br>galvao

我已经尝试了一些RegExp,但它没有像我期望的那样工作。

(.*)<.*>(.*)

但是这个RegExp得到了第一个&lt;和最后一个&gt;。

有什么想法吗?

3 个答案:

答案 0 :(得分:2)

这是一种快速的方法:

var content = "re<br>na<br>to<br>galvao";
content = content.replace(/<[^>]*>/g,'');

答案 1 :(得分:2)

将所有html标记与此正则表达式匹配:

 <("[^"]*?"|'[^']*?'|[^'">])*>

在此处查看演示:http://regex101.com/r/fA0oT4

答案 2 :(得分:1)

你可以使用非贪婪的比赛。根据{{​​3}}的答案,在javascript中它是*?

所以,假设这是你的正则表达式的唯一问题,它应该与

一起使用
(.*?)<.*?>(.*?)