Not the most elegant way would be to simply traverse the text, selecting each character one by one, get it's font and match the properties you are looking for. Each time a match is found you simply hold on to the start position and then search for the end by finding a mismatch or the end of the text.
Here you have a sample how to check the font. Traversing and selecting should be a peace of cake.
http://msdn.microsoft.com/en-us/library/system.windows.forms.richtextbox.selectionfont.aspx[
^]
Maybe this article here on the codeproject might also be helpful and could supply you with another way of searching on these font properties.
NRTFTree - A class library for RTF processing in C#[
^]
Good luck!