Removing specific characters in a string?
Show older comments
Im having difficulty in deleting pre-specified characters from any given string. The characters that i am tryin to eliminate are 't' 'i' 'x' 'y'
I need a lot of help creating a function that would do this for any given string.
for example
modstr('picture') should return ans = ('pcure')
or
modstr('alex') should return ans = ('ale')
I would appreciate any help or hints regarding this since i've been working on this for literally 6 hours now.
Thank You.
2 Comments
Walter Roberson
on 6 Oct 2012
What about upper case characters?
str = 'The quick brown fox jumped over the lazy dog';
unwanted = 'tixy';
str(~ismember(str, unwanted))
Accepted Answer
More Answers (2)
Azzi Abdelmalek
on 6 Oct 2012
Edited: Azzi Abdelmalek
on 6 Oct 2012
s='picture' % Example
s(regexp(s,'[t,i,x,y]'))=[]
3 Comments
Matt Fig
on 6 Oct 2012
This will replace commas too.
Azzi Abdelmalek
on 6 Oct 2012
s(regexp(s,'[tixy]'))=[]
Paul Safier
on 23 Jun 2022
Great solution, thanks.
Walter Roberson
on 6 Oct 2012
1 vote
Hint #1: ismember()
Hint #2: logical indexing
2 Comments
Nikhil Bhatia
on 6 Oct 2012
Walter Roberson
on 6 Oct 2012
Edited: Walter Roberson
on 24 Jun 2022
Consider
s == 't' | s == 'i' | s == 'x' | s == 'y'
Categories
Find more on Characters and Strings in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!