Regex заменить текст, но исключить, когда текст находится между определенным тегом

У меня есть следующая строка:

Lorem ipsum Test dolor sit amet, consetetur sadipscing elitr, sed diam nonumy <a href="http://Test.com/url">Test</a> eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd sed Test dolores et ea rebum. Stet clita kasd gubergren, no sea <a href="http://url.com">Test xyz</a> takimata sanctus est Lorem ipsum dolor sit amet.

Теперь я бы заменил строку «Test». вне тегов, а не между тегами (например, заменены на '1234').

Lorem ipsum 1234 dolor sit amet, consetetur sadipscing elitr, sed diam nonumy <a href="http://Test.com/url">Test</a> eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd sed 1234 dolores et ea rebum. Stet clita kasd gubergren, no sea <a href="http://url.com">Test xyz</a> takimata sanctus est Lorem ipsum dolor sit amet.

Я начал с этого регулярного выражения:(?!<a[^>]*>)(Test)([^<])(?!</a>)

Но две проблемы не решены:

The text 'Test' gets also replaced inside Tags (e.g. ) Does the text between the tag not exactly match the searched text, it will be also replaced(e.g. <a href="http://url">Test xyz</a>)

Я надеюсь, что у кого-то есть решение этой проблемы.

Ответы на вопрос(4)

Ваш ответ на вопрос