Как использовать Negative Lookahead в Regex для удаления нежелательных строк
Мне нужна помощь в использовании отрицательного вида. Я использую Notepad ++ и хочу удалить все строки, кроме строк, содержащих <title>(.*)</title>
Я попробовал пару вещей, но это не сработало.
^.*(?!<title>).*</title>
^.*(?!<title>.*</title>)
Ответ 1
Вы близко:
^(?!.*<title>.*</title>).*
При этом регулярном выражении ^.*(?!<title>.*</title>) механизм regex просто найдет какую-то позицию, в которой он не сможет найти <title>.*</title> (конец строки является одной из таких допустимых позиций).
Вам нужно убедиться, что с начала строки вы не можете найти <title>.*</title> в любом месте строки. Это то, что делает мое регулярное выражение.