delete special characters (\ / : * " < > |) in char
Afficher commentaires plus anciens
Hi. I need to transform these lines:
name_1 = '<Hello World>';
name_2 ='File numb: 5';
into these:
name_1 = 'Hello World';
name_2 ='File numb 5';
In general, I would like to delete, if they are present, within the name all 8 symbols: \ / : * " < > |
Réponse acceptée
Plus de réponses (3)
One way:
name_1 = '<Hello World>';
tf=ismember(name_1, '\/:*"<>|');
name_1(tf)=''
1 commentaire
Alberto Acri
le 26 Juin 2023
name_1 = '<Hello World>';
name_1 = erase(name_1, ["<", ">", "\", "/", ":", "*", """", "|"])
1 commentaire
Alberto Acri
le 26 Juin 2023
You could also use regexprep(), though perhaps using erase() is more convenient.
% using numbered variables only makes processing more difficult
% instead of embedding implicit indices in the names, just use an array
names = {'<Hello World>';
'File numb: 5';
'1\|2/>3:<4*"5"*6<:7>/8|\9'};
% replace any instance of the listed characters with ''
names = regexprep(names,'[\\/:*"<>|]*','')
1 commentaire
Alberto Acri
le 26 Juin 2023
Catégories
En savoir plus sur Logical dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!