Oups, i sent my answer to squeak-dev... forward to beginners

I see at least two alternatives:
- Stream
- VBRegex

If you have a single separator string, then Stream already has the upToAll: 
method (leave stream positioned before occurence...)

| testString sep subStrings inputStream |
testString := 'split that string in this language'.
sep := 'th'.
subStrings := Array new writeStream.
inputStream := testString readStream.
[inputStream atEnd]
        whileFalse: [
                subStrings nextPut: (inputStream upToAll: sep).
                inputStream throughAll: sep].
^subStrings contents

VBRegex is more powerfull of course (it can match several different separators 
at once).
I let you inquire about it.

Nicolas


Damien Pollet:
> Hi,
> 
> is there anything like ruby's String#split in Smalltalk? (split the
> string at string occurences or regexp matches)
> 
> I found SequenceableCollection#piecesCutWhere: or String#findTokens
> but I need to split at occurences of a substring. I must also admit my
> problem is with VW... I did try in the method finder in Squeak, but
> without much success.
> 
> -- 
>  Damien Pollet
>  type less, do more
> _______________________________________________
> Beginners mailing list
> Beginners@lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/beginners
> 


________________________________________________________________________
iFRANCE, exprimez-vous !
http://web.ifrance.com
_______________________________________________
Beginners mailing list
Beginners@lists.squeakfoundation.org
http://lists.squeakfoundation.org/mailman/listinfo/beginners

Reply via email to