String array of the letters of the alphabet

38 visualizzazioni (ultimi 30 giorni)
Is there a compact way to generate a string array with the letters of the English alphabet?
alphabet = ["a","b", .., "z"]

Risposta accettata

Voss
Voss il 10 Feb 2023
Modificato: Voss il 10 Feb 2023
string(('a':'z').').'
ans = 1×26 string array
"a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"

Più risposte (1)

John D'Errico
John D'Errico il 10 Feb 2023
alf = 'a':'z'
alf = 'abcdefghijklmnopqrstuvwxyz'
It also works for caps.
ALF = 'A':'Z'
ALF = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
  2 Commenti
the cyclist
the cyclist il 10 Feb 2023
Thanks, but two issues:
  • I want a string array, not a character array
  • I want 26 elements, each with one letter (not a single string with all letters)
John D'Errico
John D'Errico il 10 Feb 2023
The obvious is:
alf = string('a':'z')
alf = "abcdefghijklmnopqrstuvwxyz"
That makes a string array, but you wanted a set of scalar string arrays. So then I see that this will create the desired string array.
string({'a' 'b'})
ans = 1×2 string array
"a" "b"
And that means you can use mat2cell.
string(mat2cell('a':'z',1,ones(1,26)))
ans = 1×26 string array
"a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"
It feels a little kludgy. But it works. There may be a better way. If so, I'll probably think of it as soon as I click on submit.

Accedi per commentare.

Categorie

Scopri di più su Data Type Conversion in Help Center e File Exchange

Tag

Prodotti


Release

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by