help with regexp

1 visualización (últimos 30 días)
Edward
Edward el 2 de Abr. de 2012
Hi im trying to use regexp to get some 1,2 and 3 digit numbers from a string of symbols and numbers, for example:
3
2
100
so far im using regexp(string,'\d+','match') which is returning ans=['3' '2' '100'] and where:
ans(1)='3' which doesnt seem to be a number or a string.. how can i change this/these numbers to make them of some use?

Respuesta aceptada

Oleg Komarov
Oleg Komarov el 2 de Abr. de 2012
s = '32100';
out = regexp(s,'\d+','match');
cellfun(@str2double,out)
regexp returns the result in a cell array. Thus you cannot directly convert a cell that contains a string number into a proper double.
cellfun loops for each cell and applies the function specified after teh handle @
You have to acces the cell
str2double(out{1})
str2num(out{1})

Más respuestas (0)

Categorías

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

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by