Uppercase string from the cell array

8 visualizzazioni (ultimi 30 giorni)
I have a cell array a = {'AA_DFA_DD' ,'DSFA_dfaf' ,'DDDD' , 'DFE1' ,'dfs_DD'}
How can extract only the upper case string from the cell array
my answer should be {'AA_DFA_DD',[],'DDDD','DFE1',[]}
How can i do this?
Thanks a lot
  1 Commento
Stephen23
Stephen23 il 12 Ago 2015
+1 for a clear question with input and output examples.

Accedi per commentare.

Risposta accettata

Stephen23
Stephen23 il 12 Ago 2015
Modificato: Stephen23 il 12 Ago 2015
regexp(a,'^[^a-z]+$','match')
  2 Commenti
Gopalakrishnan venkatesan
Gopalakrishnan venkatesan il 12 Ago 2015
Modificato: Stephen23 il 12 Ago 2015
It works well
Can give me the small explanation of expression
Thanks a lot
Stephen23
Stephen23 il 12 Ago 2015
Modificato: Stephen23 il 12 Ago 2015
^ % match start of string
[^a-z] % match any character EXCLUDING lower-case
+ % repeated one or more times
$ % match end of string
These are all explained in the documentation:

Accedi per commentare.

Più risposte (1)

Azzi Abdelmalek
Azzi Abdelmalek il 12 Ago 2015
Modificato: Azzi Abdelmalek il 12 Ago 2015
out=a(cellfun(@(x,y) isequal(x,y),a,upper(a)))
or
out=cell(size(a))
idx=cellfun(@(x,y) isequal(x,y),a,upper(a))
out(idx)=a(idx)

Categorie

Scopri di più su Characters and Strings 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!

Translated by