Javascript 正则表达式,用于匹配从最后一次出现的模式到跨多行的不同模式
Javascript regex to match from the last occurrence of pattern until a different pattern across multiple lines
这是我尝试匹配的html示例
<div><p>Hello World</p></div>
<hr style="margin: 10px">
<div><p>Regex is hard</p></div>
<div><p>Hello World</p></div>
<hr style="margin: 10px">
<div><p>Regex is hard</p></div>
<div><p>Block I want to Match</p></div>
<hr style="margin: 10px">
<div><p>Matching Text</p></div>
我希望能够抓住:
<hr style="margin: 10px">
<div><p>Matching Text</p></div>
但是,我似乎无法弄清楚我需要使用的正则表达式。我找到了这样的例子:RegEx 将与字符串中最后一次出现的点匹配。但我似乎无法将其适应我的用例。
编辑:应该指定...我尝试匹配的匹配项将始终是最后一个出现项。
你真的不需要正则表达式。假设您有一个将代码包装在 OP 中的容器<div id="stuff"/>
:
document.querySelectorAll('#stuff > hr:nth-last-of-type(1), #stuff > div:nth-last-of-type(1)');
如果您使用的是 jQuery:
$('#stuff > hr:nth-last-of-type(1), #stuff > div:nth-last-of-type(1)');
这些选择器基本上选择最后的<hr/>
,并在<div id="stuff"/>
内<div/>
标记子元素,并且应该足以抓取这些元素并随心所欲地使用它们。
相关文章:
- D3.js模式不适用于弧形或圆环图
- 用于操纵DOM API的Javascript设计模式
- 用于多个选项卡和模块化的knockoutjs设计模式
- Regex模式,用于检查字符串中每个单词的第一个字母(如果是Javascript中的大写字母)
- ES6 const,用于在JavaScript中创建对象原型;这是一种模式吗
- Javascript仅适用于alert()和Debug模式
- 用于筛选无模式集合的最快数据结构
- 流星技术/模式,用于等待数据库变量更改,然后在 in 之后执行某些操作
- 用于登录/注册Angular应用程序的模式/对话框
- 验证模式中的HTML5不适用于以一些特定字符开头的字符串
- lightGallery动态模式不适用于Firefox和Safari
- 用于处理带有promise的外部接口中的参数的设计模式
- 这个特定 csv 数据集的 MongoDB 模式?(用于数据目的)
- click中的pendig引导模式用于加载远程数据
- PubSub模式用于在两个解耦的javascript模块之间传输数据
- Knockout JS模式用于同一页面中的多个视图模型,维护DOM结构
- Ember DRY模式用于重用“Ember.computed.alias”
- 如何将Bootstrap 3模式用于JavaScript alert()
- Q模式用于许多排队操作
- 当进行多个ajax请求时,是否有一个“良好的模式”?用于跟踪响应与哪些数据一致