Ваш ведущий $
должен быть ^
.
Если вы не хотите полностью соответствовать концу строки, не используйте $
в конце. Однако, поскольку *
является жадным, он будет захватывать столько, сколько сможет. Некоторые реализации регулярных выражений имеют не жадную версию, которая будет работать, но вы, вероятно, просто хотите изменить (.*)
на ([^<]*)
.