Borrar filtros
Borrar filtros

Remove repeated values in a CSV string

4 visualizaciones (últimos 30 días)
Matthew Tyler Jeffries
Matthew Tyler Jeffries el 19 de Abr. de 2019
Comentada: Matthew Tyler Jeffries el 22 de Abr. de 2019
I have a string with comma separated values, and would like to delete the repeated values so that there are no repeats in my string.
mystring = '1,1,1,25,33,33,5,5,3,2,1,1'
Iwant = '1,25,33,5,3,2'
The order of the numbers in "Iwant" is not important. It could be '1,25,33,5,3,2' or "1,33,5,25,3,2" or "2,3,5,33,1,25" (whatever works).
I have many other strings I would like to edit, so it would be great if the code could apply to a string with any manner of numbers in it.
  2 comentarios
Walter Roberson
Walter Roberson el 19 de Abr. de 2019
Are the values certain to be numeric? Are they certain to be integer? If they might be floating point, then would 25.70 be considered different than 25.7 ?
Matthew Tyler Jeffries
Matthew Tyler Jeffries el 19 de Abr. de 2019
Yes, the values will always be numeric, no decimals, no fractions, no negative numbers.

Iniciar sesión para comentar.

Respuesta aceptada

Stephan
Stephan el 19 de Abr. de 2019
Editada: Stephan el 19 de Abr. de 2019
mystring = '1,1,1,25,33,33,5,5,3,2,1,1'
iwant = join(unique(split(string(mystring),',')),',')
results in a string:
mystring =
'1,1,1,25,33,33,5,5,3,2,1,1'
iwant =
"1,2,25,3,33,5"
Note, that you speak of string, but use char type. if you want char as result use this instead:
iwant = char(join(unique(split(string(mystring),',')),','))

Más respuestas (0)

Categorías

Más información sobre String Parsing 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