Jn, mate pravdu s tim sedem. Pokud muzete pouzit Perl, tak neco takoveho vypada, ze funguje:
$ cat in.html
<div class="xxx">yyy</div>
before
<div class="errorMessageBox">Zde je nějaká odpověd
serveru na více řádcích, class má vždy Message, ale může se lišit co je před ním a za ním.
<p>Někdy je odpověď strukturovaná i do několika odstavců, rád bych, aby to vypsalo celý obsah toho tagu, včetně začátečního Xdiv class="*Message*"X i koncového X/divX
</p>
</div>
after
<div>sec div</div>
$ ( tr '\n' ' ' | perl -p -e 's/^.*(<div class="\w+Message\w+">.*?<\/div>).*$/\1/;' ) < in.html
<div class="errorMessageBox">Zde je nějaká odpověd serveru na více řádcích, class má vždy Message, ale může se lišit co je před ním a za ním. <p>Někdy je odpověď strukturovaná i do několika odstavců, rád bych, aby to vypsalo celý obsah toho tagu, včetně začátečního Xdiv class="*Message*"X i koncového X/divX </p> </div>%
Ale jak pisou ostatni, je to nespolehlive - rozbijete se to snadno (div v divu, resp. ukonceni divu v msg divu). Lepsi by bylo to necim opravdu naparsovat a plhotucne zpracovat (Python, Ruby, JS, atp. urcite maji hezke knihovny).