how do I remove special characters from my cell array strings?

4 visualizaciones (últimos 30 días)
I have a cell array of the sorts:
{'508-647-7000'} {' (508) 647-7001'} {' 617-555-1212'}
I need the special characters and the spaces removed from these. The result should look something like this:
{'5086477000'} {'5086477001'} {'6175551212'}
I tried writing the following cell function to do it:
characters = ['(',')',' ','-'];
s_nos=cellfun(@(x) x~=characters,s_split, 'UniformOutput', false);
but I am getting the following error: * Matrix dimensions must agree.*
Kindly help.
  3 comentarios
Rik
Rik el 8 de Abr. de 2018
You can enter that solution as an answer and accept it.
You can also use isstrprop to keep only digits:
s_nos=cellfun(@(x) x(isstrprop(x,'digit')),s_split, 'UniformOutput', false);

Iniciar sesión para comentar.

Respuesta aceptada

Srishti Saha
Srishti Saha el 8 de Abr. de 2018
This worked for me
s_nos=regexprep(s_split,'[^0-9]','');

Más respuestas (0)

Categorías

Más información sobre Characters and Strings en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by