In Smalltalk, if given the string 'OneTwoThree', I'd like to remove the last 'Three' part, .e., In Squeak method finder notation: 'OneTwoThree' . 'Three' . 'OneTwo'
.
The best I can come up with is:
'OneTwoThree' allButLast: 'Three' size
,
but it doesn't feel very Smalltalk-ish, because it uses the substring length, rather than the substring itself. How would you code it?
'OneTwoThree' readStream upToAll: 'Three'
I usually use #copyReplaceAll:with: method, if the last string is not repeated elsewhere in the original string of course:
'OneTwoThree' copyReplaceAll: 'Three' with: ''
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With