You could use split, but if your string is English you should probably use Lingua::EN::Splitter or Lingua::EN::Segmenter::TextTiling to split it into words as this has more logic in it to treat apostrophes etc. that may be in a legitimate single word.