How do I replace a word in a string with ****?

5 次查看(过去 30 天)
Hello I have a text file where I am supposed to compare the strings in the text file with the words in another text file. After finding the word that I want to replace, how do I replace it? The first thing I did was use strfind to find the word. After that I have to replace the word with **?
str = 'Long day';
word = 'Long';
t = strfind(str, word);
After doing this I get 1. Now how do I change 'Long day' to '**** day'? The word can be of any length, so you may need more ********.
Thank you

采纳的回答

per isakson
per isakson 2015-2-28
编辑:per isakson 2015-2-28
Try
str = strrep( str, 'Long', '****' );
  2 个评论
Kratos
Kratos 2015-2-28
I tried this but the thing is the word that I have to replace can be of any length. It could also be 'something' or 'MATLAB' anything.
per isakson
per isakson 2015-3-1
编辑:per isakson 2015-3-1
"can be of any length" &nbsp strrep handles any length of the search and replacement string, respectively. That shouldn't be a problem.
>> str = strrep( 'abcd', 'c', '123456789' )
str =
ab123456789d
"It could also be 'something' or 'MATLAB' anything" &nbsp I guess you need to use string variables instead of static strings.
>> str = 'abcd';
>> s1 = 'c';
>> s2 = '123456789';
>> str = strrep( str, s1, s2 )
str =
ab123456789d
Then there is regexprep, but I don't think you need to use that for your current problem
"I tried this" &nbsp It is neither possible for me to know what you tried nor why you think it was no good.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Characters and Strings 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by