Если вы хотите сделать это с помощью регулярных выражений, вы можете создать несколько различных выражений, шаг за шагом.Возможно, вы сможете соединить их, используя ИЛИ трубы, но это может быть необязательно.
RegEx 1 для тегов h1-h6
Эта ссылка помогает вам захватывать теги тела, исключая тело и голову:
(<(.*)>(.*)</([^br][A-Za-z0-9]+)>)
Возможно, вы захотите добавить к нему больше границ,Например, вы можете заменить (.*)
списками символов []
.
RegEx Circuit
This ссылка помогает визуализировать выражения:
RegEx 2 для головы и тела
для тегов головы и тела,Возможно, вы захотите пролистать новые строки, которые вы можете выражение, подобное :
(<head>([\s\S]*)<\/head>)|(<body>([\s\S]*)</body>)
Производительность
Эти выражения довольно дороги, вы можете их упростить, или написать несколько других сценариев для анализа ваших HTML, или, возможно, найти HTML-анализатор для этого.