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