How to find first non repeated (unique) character in a string?
11 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Sam Accura
am 14 Feb. 2019
Kommentiert: Sam Accura
am 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 Kommentare
Akzeptierte Antwort
madhan ravi
am 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'))
Weitere Antworten (1)
Andrei Bobrov
am 14 Feb. 2019
z = 'hello';
[a,~,c] = unique(z,'stable');
out = a(find(accumarray(c,1) == 1,1));
0 Kommentare
Siehe auch
Kategorien
Mehr zu Pulsed Waveforms finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!