Named string regex patterns.

Allows regexes to take a name when validating strings. This is useful for differentiating multiple regex patterns.

Closes #439.