Immediately, I notice:
[al|sf|sa|sc|nrc|nrc form|doe|doe f|lsi|doe form psd f|doe al f]?
should be:
(?:al|sf|sa|sc|nrc|nrc form|doe|doe f|lsi|doe form psd f|doe al f)?
The "non-capturing group", (?: ), lets you avoid capturing that first part as an initial group. This way, the whole expression is "match group 0" and that's it.
Tested here: http://regex101.com/r/lS9dT2