Constraining Linear-chain CRFs to Regular Languages