use Text::ParseWords to parse a line