Regex 正则表达式以匹配<;之间的所有字符;h1>;标签
我正在使用sublime文本2编辑器。我想使用正则表达式来匹配所有Regex 正则表达式以匹配<;之间的所有字符;h1>;标签,regex,sublimetext3,sublimetext2,Regex,Sublimetext3,Sublimetext2,我正在使用sublime文本2编辑器。我想使用正则表达式来匹配所有h1标记之间的所有字符 到现在为止,我用的是这样的 <h1>.+</h1> <h1> Hello this is a hedaer </h1> + 如果h1标签没有中断,则工作正常 我是说 <h1>Hello this is a hedaer</h1> 您好,这是一辆hedaer 工作正常 但是如果标签看起来像这样,它就不起作用了 <h1
h1
标记之间的所有字符
到现在为止,我用的是这样的
<h1>.+</h1>
<h1>
Hello this is a hedaer
</h1>
+
如果h1标签没有中断,则工作正常
我是说
<h1>Hello this is a hedaer</h1>
您好,这是一辆hedaer
工作正常
但是如果标签看起来像这样,它就不起作用了
<h1>.+</h1>
<h1>
Hello this is a hedaer
</h1>
你好,我是海德尔
有人能帮我解释一下语法吗?默认情况下
匹配除新行字符外的所有字符
在这种情况下,您将需要DOTALL选项,它将使
匹配任何字符,包括新行字符。DOTALL选项可以内联指定为(?s)
。例如:
(?s)<h1>.+</h1>
或者,正则表达式可以是
[^]*
。在这种情况下,您不需要指定任何选项。因为这个问题是试图查找h1标记之间的所有字符的正则表达式的Google搜索结果中最热门的,我想我也会给出答案。因为那就是我要找的
(?s)(?<=<h1>)(.+?)(?=</h1>)
(?s)(?对于OP的正则表达式,指定这些选项是不够的。@Some1.Kill.The.DJ我已经尝试了你的代码。但是当标记包含break时仍然不匹配如果你在h1中有任何嵌套标记,比如span或link或其他什么…我只是尝试了“(?s)”它在sublime中工作,这很酷。我从来都不知道你可以在sublime中的正则表达式搜索中指定标志-谢谢你提供的信息@Some1.Kill.the.dj不知道你们是如何理解这些东西的。像这样的正则表达式搜索的文档在哪里?这也可以清除连续标记之间的字符,比如(?s)(?