delete special characters (\ / : * " < > |) in char
120 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Alberto Acri
am 25 Jun. 2023
Kommentiert: Alberto Acri
am 26 Jun. 2023
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: \ / : * " < > |
0 Kommentare
Akzeptierte Antwort
Matt J
am 25 Jun. 2023
One way:
name_1 = '<Hello World>';
pat=num2cell('\/:*"<>|');
name_1=erase(name_1,pat)
0 Kommentare
Weitere Antworten (3)
Jan
am 25 Jun. 2023
name_1 = '<Hello World>';
name_1 = erase(name_1, ["<", ">", "\", "/", ":", "*", """", "|"])
DGM
am 25 Jun. 2023
Bearbeitet: DGM
am 25 Jun. 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,'[\\/:*"<>|]*','')
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!