Deduplicate MainChatHandler and fix number regex

The old number regex failed to match 8, 9, and 80–99.