regexprep() skip first occurrence

3 visualizzazioni (ultimi 30 giorni)
newbie9
newbie9 il 13 Mar 2019
Commentato: newbie9 il 13 Mar 2019
Is there a way to use regexprep() but skip the first occurrence of a space?
mystring = 'this is my string';
desired return:
mystring2 = 'this ismystring';

Risposta accettata

Akira Agata
Akira Agata il 13 Mar 2019
How about using regexp to find the position of spaces, and delete 2nd~Nth spaces? Like:
mystring = 'this is my string';
pos = regexp(mystring,'\s');
mystring(pos(2:end)) = [];

Più risposte (1)

newbie9
newbie9 il 13 Mar 2019
Modificato: newbie9 il 13 Mar 2019
this works but perhaps is not most efficient:
[spaces,letters] = regexp(mystring, ' ', 'match', 'split', 'forceCellOutput');
spaces = [spaces{:}];
letters = [letters{:}];
mystring2 = [sprintf('%s',letters{2:end-1}), letters{end}];
mystring2 = strcat(char(letters(1)), {' '}, mystring2)

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by