匹配HTML标记';使用Javascript正则表达式保存内容
我的JavaScript函数中有以下HTML作为字符串:匹配HTML标记';使用Javascript正则表达式保存内容,javascript,jquery,html,regex,tags,Javascript,Jquery,Html,Regex,Tags,我的JavaScript函数中有以下HTML作为字符串: <p>one</p> <p align='center'>two</p> 一个两个 我要提取此字符串: “onetwo”(显然没有引号) 您可以推荐一些纯JavaScript代码(jQuery也可以…)来获取标记的内容吗?使用jQuery您不需要复杂的正则表达式,您可以轻松解析HTML并使用DOM: var s = "<p>one</p> <p align=
<p>one</p> <p align='center'>two</p>
一个两个
我要提取此字符串:
“onetwo”
(显然没有引号)
您可以推荐一些纯JavaScript代码(jQuery也可以…)来获取标记的内容吗?使用jQuery您不需要复杂的正则表达式,您可以轻松解析HTML并使用DOM:
var s = "<p>one</p> <p align='center'>two</p>";
var wrapper = $('<div />').html(s);
var text = wrapper.text();
var s=“onetwo
”;
var wrapper=$('').html(s);
var text=wrapper.text();
在这种情况下,$(s).text()
也可以工作,但如果在第一级有自由文本(例如12
),它将失败,因此我通常避免使用它
请注意,这里的结果是“一二”
(而不是“一二”
),因为
标记之间有一个空格。如果这是一个问题,您可以使用
wrapper.children().text()
或wrapper.find('p').text()
,例如,根据您的具体需要
工作示例:我使用以下正则表达式从XML标记中获取内容。 这只适用于具有内容且后跟结束标记的标记。不会获取包含其他标记的标记的内容。 标记名称位于捕获组1中,标记内容位于捕获组2中。这将用于获取标记内容内部的所有内容,包括“,”和(&I)
<([^\s>]+)\s?[^>]*>(.*)(?:<\/\1)>
]+)\s?[^>]*>(.*)(?:
不要使用正则表达式+1很好的注释..他现在会后悔的..不使用正则表达式绝对是做到这一点的关键:P