How to find first non repeated (unique) character in a string?
12 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Sam Accura
il 14 Feb 2019
Commentato: Sam Accura
il 14 Feb 2019
I have already tried to find a Matlab function for this but doesnt seem to be one apart from 'unique' which only eliminates duplicates. Any ideas for code on how to do this?
For example, an input of 'hello' would return h or an input of 'radar' would return d.
The unique characters in 'hello' are h,e and o with h being the first in line
The unique character in 'radar' is only d and so this would also be the first
Any help would be appreciated
2 Commenti
Risposta accettata
madhan ravi
il 14 Feb 2019
u=unique(s,'stable'); % where s is your input
Z=arrayfun(@(x)nnz(s==u(x)),1:numel(u));
Result=u(find(Z==1,1,'first'))
Più risposte (1)
Andrei Bobrov
il 14 Feb 2019
z = 'hello';
[a,~,c] = unique(z,'stable');
out = a(find(accumarray(c,1) == 1,1));
0 Commenti
Vedere anche
Categorie
Scopri di più su Pulsed Waveforms in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!