Я бы пошел с первым ответом Александра:
words := phrase substrings.
newPhrase := words copyAfter: 'sit'
Кажется, что больше намерения (то есть ясно), чем любое из следующего, но просто для забавы, есть два других способа:
Если после профилирования вы хотели повысить эффективность.Этот способ в 25 раз более эффективен:
sitStart := phrase findWordStart: 'sit' startingAt: 1.
afterSit := sitStart + 4.
phrase copyFrom: afterSit to: phrase size.
PetitParser: в 10 раз менее эффективен, но отличный инструмент, который можно иметь в кармане в более сложных ситуациях анализа:
sit := 'sit' asParser.
partToKeep := sit negate plus, sit, #any asParser plus flatten trim ==> [ :n | n third ].
partToKeep parse: phrase.
Кроме того,Вы должны решить, что делать, если «сидеть» не найдено.