问题 如何在正则表达式中使用负前瞻来删除不需要的行


我需要有关使用否定前瞻的帮助。我正在使用Notepad ++,我想删除除包含的行之外的所有行 <title>(.*)</title>

我尝试了几件事但是没有用。

^.*(?!<title>).*</title>
^.*(?!<title>.*</title>)

2779
2018-03-09 18:03


起源



答案:


你很近:

^(?!.*<title>.*</title>).*

通过这个正则表达式 ^.*(?!<title>.*</title>),正则表达式引擎只会找到一些它无法找到的位置 <title>.*</title> (行尾是一个这样的有效位置)。

你需要确保从行的开始,你无法找到 <title>.*</title> 在线的任何地方。这就是我的正则表达式。


15
2018-03-09 18:42



最后添加\ r \ n(windows)或\ n(linux)删除/删除该行 - Raghavendra


答案:


你很近:

^(?!.*<title>.*</title>).*

通过这个正则表达式 ^.*(?!<title>.*</title>),正则表达式引擎只会找到一些它无法找到的位置 <title>.*</title> (行尾是一个这样的有效位置)。

你需要确保从行的开始,你无法找到 <title>.*</title> 在线的任何地方。这就是我的正则表达式。


15
2018-03-09 18:42



最后添加\ r \ n(windows)或\ n(linux)删除/删除该行 - Raghavendra