Регулярные выражения описывают операции на обычных языках.HTML не является обычным языком.Я был бы готов поспорить, что вы могли бы сделать это с помощью так называемого «рекурсивного регулярного выражения», так как они на самом деле не являются регулярными выражениями и не ограничены регулярными языками.Я был бы готов поспорить, что вы все равно лучше разберете его.
Проще всего (не самый лучший, но самый простой код в несколько строк), это вести счетвнутренние деленияВсякий раз, когда вы сталкиваетесь с тегом div, увеличивайте счет.Всякий раз, когда вы сталкиваетесь с закрывающим тегом div, сбрасывайте счетчик, если он ненулевой, или вы нашли свой полный элемент.Всякий раз, когда вы сталкиваетесь с концом файла, кто-то не закрыл свои div'ы должным образом.
Использование синтаксического анализатора XML еще проще, если вы можете зависеть от правильности кода (если вы не можете,у вас есть две проблемы ...) или вы готовы просто к ошибке в случае некорректного ввода.