handling "token or empty" matches