Can you use replace to remove all characters that aren't letters from a string?

120 views (last 30 days)
I was wondering if I can use replace(str, ~['A':'Z' 'a':'z'], ' ') to replace all values that are not letters with an empty character. For example, if the string was 'I; love123 you-+'
I would need it to make a new string that is 'I love you'. Additionally, if this is not possible is there another way of doing this?

Accepted Answer

Steven Lord
Steven Lord on 28 Oct 2019
You can use isstrprop to create a mask for various categories of characters then use that mask to extract just all letters, or just all numbers, etc.

More Answers (1)

Shubham Gupta
Shubham Gupta on 27 Oct 2019
Edited: Shubham Gupta on 27 Oct 2019
Try
str = 'I; love123 you-+';
str_new = regexprep(str,'[^a-zA-Z\s]','');

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!