I wonder if we should refactor all of the calls to `buildRegex` (which, by the way, should have a `this` prefix) with a helper method and constants. So we can do

`AppendRegexSegment(this.RegexStart)`
`AppendRegexSegment(this.RegexParameter)`
`AppendRegexSegment(this.RegexEnd)`

To make it more readable on what's going on. The naming of the method and constants probably needs a bit more love than what I gave it though =)