in reply to Re: Split String after nth occurrence of a charater
in thread Split String after nth occurrence of a charater

Wrong on several accounts:
  1. It doesn't count leading whitespace.
  2. It counts non-space whitespace as if it were a space.
  3. It only counts whitespace directly following non-whitespace.
  4. It doesn't actually split; the whitespace on which it should split is returned in $&.
  5. It doesn't actually split: it only returns one substring; if you were to fix this by adding /g, whitespace following the "11"th one will be lost.
  6. It only matches chunks that actually have an 11th space. If $str would contain only 5 spaces, the match fails; a split would still return something.
Better would be (untested):
@chunks = $str =~ /((?:[^ ]* ){10}[^ ]*|.+)/gs;
but even that isn't quite split.