Naive version with ? and * works correctly but still doesn't support
spaces