定期表达删除html标签和字符

时间:2017-07-10 15:41:30

标签: javascript jquery html regex string

我需要一个正则表达式的帮助,它会删除字符串中的所有html标签和字符。

在下面显示的代码中,我是oldStr:

enter image description here

点击“替换”按钮按钮,我想将oldStr更改为' Hello'并删除'<&#;,'>'以及我的字符串中显示的任何类型的html标签。

我怎么能实现这个目标?

这是我的代码:



$(document).ready(function(){
  var oldStr = '<p><a>Hello</a></p&gt';
  $('#old').text(oldStr);
  $('#replaceBtn').click(function(){
    var newStr = mystr.replace('<', '');
    $('#new').text(newstr);
  });
});

div{
  height: 50px;
  width: 300px;
  border: 1px solid grey;
  border-radius: 5px;
  margin: 10px;
  padding: 10px;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="old"></div>
<br />
<div id="new"></div>
<br />
<button id="replaceBtn">Replace</button>
&#13;
&#13;
&#13;

4 个答案:

答案 0 :(得分:2)

请试试这个

var oldString = '<p><a>Hello</a></p>';

var newString = $(oldString).text();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

答案 1 :(得分:1)

尝试以下代码。 https://jsfiddle.net/vineeshmp/do83rje2/

$(document).ready(function(){ 
  var oldStr = '&lt;p&gt;&lt;a&gt;Hello&lt;/a&gt;&lt;/p&gt';
  $('#old').text(oldStr);
  $('#replaceBtn').click(function(){
    var newStr = $('<textarea />').html(oldStr).text();
    $('#new').text( $(newStr).text());
  });
});

答案 2 :(得分:0)

var oldStr =  '<p><a>Hello</a></p>&gt';
var indexStart = oldStr.search("H");
var indexEnd = oldStr.search("o");
var newStr = oldStr.substring(indexStart,indexEnd +1);

答案 3 :(得分:0)

我认为这就是你要做的事。

快速向下跑:

&gt;replace字符转换为更易于阅读的格式。我们这样做是为了让我们可以更轻松地删除标签或其中的任何信息。

我确信有更快的方式来替换它们,而不是像我一样链接方法,但我刚刚醒来,所以这就是出来的。

接下来是正则表达式,这有点乱,但我试着解释一下:

“在不等式符号之间找到任何内容,但不要贪婪 - 匹配您找到的第一个 OR 匹配格式'&amp;(某些单词字符)的任何内容;'”然后我们只需用空字符串替换与之匹配的任何内容。你剩下的应该只是一个包含元素文本的字符串。

作为替代方案,您可能只想跟随前两个var oldStr = '&lt;p&gt;&lt;a&gt;Hello&lt;/a&gt;&lt;/p&gt;'; var newStr = oldStr.replace(/&lt;/g,'<').replace(/&gt;/g,'>').replace(/(<(.*?)>|&\w+;)/g,''); alert(newStr);调用,然后只使用Nimish的答案,我觉得这样会更可靠,因为jQuery的HTML解析器比我写的要好几英里。 / p>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
sapply