什么正则表达式模式将从包含<HTML>的外部HTML文本中提取内部HTML
What regex pattern will extract the innerHTML from the containg <HTML>'s outerHTML text?
我在字符串中具有html标签的outerHTML,并希望提取内部HTML的body标签。该函数在 C# 中使用,所以我无法访问任何 HTML/JavaScript Dom 功能,类似于如何使用正则表达式 Asp.net C# 获取 BODY html 标记(从字符串)中的所有内容。
HTML敏捷性路由将不起作用,因为执行 LoadHtml 转换时 HTML 文档中存在差异。我在实时站点上更新时捕获原始HTML正文和HTML正文的差异。我希望将这些差异与原始正文innerHTML进行比较。我想从 HTML outerHTML 中提取身体内部 HTML 的原因是在数据传输时留出空间,(html、头部和身体的一次传输,而不是每个传输。
理想情况下,这将处理任何边缘情况,例如 body 标签中的属性、无效的 html 是 body 标签等。
HTML敏捷性路由将不起作用,因为执行 LoadHtml 转换时 HTML 文档中存在差异
因此,使用相同的过程加载原始版本和新版本,然后进行比较。
您将丢失非信息集详细信息,例如标记大小写、引用和属性顺序。但是无论如何你已经失去了它,因为当你读取属性时,浏览器会从 DOM 信息集中重新生成innerHTML
(或outerHTML
);它显然不是您输入的原始 HTML。
var matches = outerHTML.match(
/<body(?:'s+[a-z]+(?:'s*='s*(?:"[^"]*"|'[^']*'|[^'s>]+)))*'s*>(['S's]*)<'/body>/i);
matches[1]
将包含 body
元素的内容(这是 HTML5 WD 中解析规则的实现)。
但是 body
元素是一个特例,因为 HTML 文档中只能有一个元素,所以正则表达式贪婪并不重要。 通常,最好改用标记分析器。
相关文章:
- HTML表单提交时未执行外部函数
- 使用html中的外部javascript进行数据验证
- HTML外部javascript加载另一个javascript
- 什么更好?使用iframe或jQuery之类的东西在外部网站中加载HTML文件
- Javascript:获取“;FORM”;它是在.html到外部.js文件中创建的
- AngularJS:带有HTML和angular表达式的指令;编译”;具有外部范围的内容
- 正在创建网页,并希望将外部链接调用为html和css
- Javascript从外部站点获取html
- 将HTML文件中的变量与外部JS文件一起使用
- 从HTML中的外部JS文件调用函数
- 如何用HTML中的JSON外部文件填充下拉按钮
- 在html文件中添加了多个外部javascript,其中一个停止工作
- 将变量从服务器上的外部文件加载到 HTML 文档中
- 将外部 SVG 和包含 JavaScript 加载到 HTML 中
- 不;t在ASP.NET MVC4中的.cs.html外部激发了Javascript函数
- 禁用 HTML 外部的 iframe 上的导航
- 如何在javascript中将数组的值和初始值重新声明到html外部
- 从HTML外部打开模态
- 如何从html外部调用jQuery函数:animate ?
- Playframework-在main.html外部附加JS