In order for a re-grouting job to do well, a couple of 'things' need to be in place.
The grout needs to be take out to about 3/8", or more, in depth. This will allow the new grout to 'grab'. If the old grout isn't removed to the said depth, it won't grab. Also, the tile AND the joints need to be very clean. If soap scum or mold or mildew get into the joints, they can fail at those points. And, when the job is complete, the grout should be sealed (or pre-sealed depending on the type of grout used). This will keep moisture out and prevent pre-mature breakdown. Also, let it sit for the required number of days to dry. If the bathroom / shower is used too soon, the grout will soften, then fail.
There is plenty of skilled labor in this area. My local Town Talk newspaper (a weekly freebie) has tons of people to call for 'general' work. You can go to a local Home Center and ask someone in the Kitchen & Bathroom dept. for a few references. Talk to friends and neighbors too.
My best to ya and hope this helps.
PS: If water has gotten behind the tile, you may have a bigger job than originally thought. Loose tiles may indicate a 'deeper' problem!