[英]Regex: Match double new lines but not within backticks
我试图匹配所有双新行,但不在反引号内。 我不熟悉后视,但我认为这就是这里所需要的。 这就是我到目前为止想出的: (?<!`)[\\r\\n]{2}
。 不知何故我需要添加.*?
或在后视之后和换行之前类似,但我还没有弄清楚。
在这里您可以看到哪些应该匹配,哪些不应该匹配。
Some random text...
// MATCH
text after break
haha text
// MATCH
`Hey,
// NO
here is some text!
// NO
and here is the end =)`
// MATCH
here is text
你可以在这里看到我的例子: https : //regex101.com/r/wvrh77/1
我如何匹配所有双新行,但不匹配反引号内的那些?
您可以使用符合 PCRE 的正则表达式,例如
/`[^`]*`(*SKIP)(*F)|\R{2}/
请参阅正则表达式演示。
详情:
`
- 反引号[^`]*
- 除反引号外的零个或多个字符`
- 反引号(*SKIP)(*F)
- 跳过当前匹配尝试,将其视为失败并从失败位置开始搜索下一个匹配|
- 或者\\R{2}
- 两个换行符序列。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.