And `regexp` matching is only 1 or two lines on top of this. @adykstra you feel like adding it, or are you tired of this PR already? :)