add character in a certain position in character array-matlab2015b

23 visualizaciones (últimos 30 días)
Hello! Is there anyway I can add a new character in a certain position of a character array? For example I have 'ABCD' and i want to create a new array that has 'ABCTD'. I am using Matlab 2015b so the insertAfter command won't work... Thanks on advance!

Respuesta aceptada

Walter Roberson
Walter Roberson el 16 de Oct. de 2017
For string S and insertion at position N+1 (that is, after position N), then
[S(1:N), NewText, S(N+1:end)]
There is no function provided for this purpose, but you can create one easily. You might want to consider generalizing to allow inserting a new column into a character array (the above is for a character vector), perhaps offering the special case of inserting the same character for every row if the replacement is not a column. Perhaps,
function NewCharArray = insertAfter( CharArray, Position, WhatToInsert)
NewCharArray = char( strcat( cellstr(CharArray(:,1:Position)), cellstr(WhatToInsert), cellstr(CharArray(:, Position+1:end)) ) );
  6 comentarios
Walter Roberson
Walter Roberson el 16 de Oct. de 2017
random_rgb = colors( randi(size(colors,1)), : );
Maria K
Maria K el 16 de Oct. de 2017
It worked perfectly. Thanks for your time!

Iniciar sesión para comentar.

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