You need to use a non-greedy quantifier:
<b>(.+?)</b>
This will ensure that the match stops at the first </b>
it finds.
However, I would generally recommend using a proper XML or HTML parser for this sort of thing. Regular expressions are simply not powerful enough to handle the recursive structure of XML.