delete special characters (\ / : * " < > |) in char

70 Ansichten (letzte 30 Tage)
Alberto Acri
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: \ / : * " < > |

Akzeptierte Antwort

Matt J
Matt J am 25 Jun. 2023
One way:
name_1 = '<Hello World>';
pat=num2cell('\/:*"<>|');
name_1=erase(name_1,pat)
name_1 = 'Hello World'

Weitere Antworten (3)

Matt J
Matt J am 25 Jun. 2023
Bearbeitet: Matt J am 25 Jun. 2023
One way:
name_1 = '<Hello World>';
tf=ismember(name_1, '\/:*"<>|');
name_1(tf)=''
name_1 = 'Hello World'
  1 Kommentar
Alberto Acri
Alberto Acri am 26 Jun. 2023
Thank you for your reply. It is as good as the others' answer.

Melden Sie sich an, um zu kommentieren.


Jan
Jan am 25 Jun. 2023
name_1 = '<Hello World>';
name_1 = erase(name_1, ["<", ">", "\", "/", ":", "*", """", "|"])
name_1 = 'Hello World'
  1 Kommentar
Alberto Acri
Alberto Acri am 26 Jun. 2023
Thank you for your reply. It is as good as the others' answer.

Melden Sie sich an, um zu kommentieren.


DGM
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,'[\\/:*"<>|]*','')
names = 3×1 cell array
{'Hello World'} {'File numb 5'} {'123456789' }
  1 Kommentar
Alberto Acri
Alberto Acri am 26 Jun. 2023
Thank you for your reply. It is as good as the others' answer.

Melden Sie sich an, um zu kommentieren.

Produkte


Version

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by