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@lists.squeakfoundation.org