True.
Thats why i said that regex in pure html is not easy. I just had to go to eat, so didn't have time to refine it so that it does what you wrote :). I might have gone on route of the first way (more understandle and perhaps faster) eg.
if (m#<P>(.+?)</P># && $1!~m/<b>/i)
Oh, well ;).