How to search a Label for a specific word and its position in space?

Label has Label.get_character_bounds() which you may use to build the collision shapes.

If you want to have more control over it then you’ll need to use a lower level API. Check this answer for an overview: