Replace each characters of strings with '-'

Hi, I want to replace all the characters of a string by '-', say, flowers will be like '-------'. Please tell me how am I supposed to do that. I am totally new to matlab. As a beginner I've done this so far.
%Select a word
B='skyyiy'
%input letter
c='y'
%stringlength
l=strlength(B)
%indices of letters occurring
d=strfind(B,c)
newStr=strrep(B,c,'-')

2 Kommentare

KSSV
KSSV am 10 Aug. 2017
It is working fine right????_y_ is replaced by '_'....what you expect?
Suresh Dahal
Suresh Dahal am 10 Aug. 2017
Bearbeitet: Suresh Dahal am 10 Aug. 2017
yes but when I try to replace whole word 'skyyiy' by newStr=strrep(B,B,'-') it shows only '-' not '------', why's that I am not sure. I want to replace whole word with ---- at on instance.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

KL
KL am 10 Aug. 2017

1 Stimme

if you've no conditions but just to have the same length as the old string then maybe something like
>> B='skyyiy'
newStr = B;
newStr(1:end) = '-'
B =
'skyyiy'
newStr =
'------'

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 10 Aug. 2017

1 Stimme

regexprep(B, c, '-')
or
B(B==c) = '_';

3 Kommentare

Suresh Dahal
Suresh Dahal am 10 Aug. 2017
the first one replaces only y from the string, but I want to replace all the letters with '------' sign
Walter Roberson
Walter Roberson am 10 Aug. 2017
Bearbeitet: Jan am 10 Aug. 2017
B(:) = '-';
Jan
Jan am 10 Aug. 2017
+1 for the last comment.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Characters and Strings finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 10 Aug. 2017

Kommentiert:

Jan
am 10 Aug. 2017

Community Treasure Hunt

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

Start Hunting!

Translated by