Я специализируюсь в области нейробиологии/биомедицинской инженерии и борюсь со всем этим испытанием программирования в MATLAB, и пока что этот веб-сайт является лучшим учителем, доступным для меня прямо сейчас. В настоящее время у меня проблемы с одной из моих проблем с аппаратным обеспечением. Что мне нужно сделать, так это взять фразу, найти в ней определенное слово, затем взять в ней определенную букву и увеличить эту букву на указанное число. Другими словами:
phrase = 'this homework is so hard'
word = 'so'
letter = 'o'
factor = 5
which should give me 'This homework is sooooo hard'
Я избавился от своей основной ошибки, хотя я действительно не знаю, как это сделать. Я вышел из MATLAB, затем вернулся в него. О чудо, это волшебным образом сработало.
function[out1] = textStretch(phrase, word, letter, stretch)
searchword= strfind(phrase, word);
searchletter strfind(hotdog, letter); %Looks for the letter in the word
add = (letter+stretch) %I was hoping this would take the letter and add to it, but that's not what it does
replace= strrep(phrase, word, add) %This would theoretically take the phrase, find the word and put in the new letter
out1 = replace
По словам учителя, функция one() может быть полезной, и мне приходится конкатенировать строки, но если я могу просто найти ее в строке и заменить, зачем мне конкатенация?
strrep
букву и число и ожидать, что он будет знать, что буква будет повторяться пять раз - это замена строки, а не повторение строки. Вы также вызываетеstrfind
дважды, а затем ничего не делаете с выводами. Мое предложение состоит в том, чтобы начать с разработки того, как начать со слова («так»), буквы («о») и цифры (5) и получить «тааак». Как только вы это сделаете, вы можете использоватьstrrep
. - person nkjt   schedule 19.09.2014