I'm not convinced the \b in the UUID regex serve any purpose. Why are we trying to match word boundaries here?
^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$
(I tested the regex without the \b and the same strings match or don't match)
@alex-hofmann do you remember why you added those?