Если вы хотите поместить каждую заглавную букву в сокращение ...
... вы можете использовать функцию REGEXP :
str = 'Superior Temporal Gyrus'; %# Sample string
abbr = str(regexp(str,'[A-Z]')); %# Get all capital letters
..или вы можете использовать функции UPPER и ISSPACE :
abbr = str((str == upper(str)) & ~isspace(str)); %# Compare str to its uppercase
%# version and keep elements
%# that match, ignoring
%# whitespace
... или вместо этого вы можете использовать значения ASCII / UNICODE для заглавных букв:
abbr = str((str <= 90) & (str >= 65)); %# Get capital letters A (65) to Z (90)
Если вы хотите поместить каждую букву, начинающую слово, в сокращение ...
..Вы можете использовать функцию REGEXP :
abbr = str(regexp(str,'\w+')); %# Get the starting letter of each word
... или вы можете использовать функции STRTRIM , FIND и ISSPACE :
str = strtrim(str); %# Trim leading and trailing whitespace first
abbr = str([1 find(isspace(str))+1]); %# Get the first element of str and every
%# element following whitespace
... или вы можете изменить вышеуказанное, используя логическое индексирование , чтобы избежать вызова FIND :
str = strtrim(str); %# Still have to trim whitespace
abbr = str([true isspace(str)]);
Если вы хотите поместить каждую заглавную букву, начинающую слово в аббревиатуру ...
... вы можетеиспользуйте функцию REGEXP :
abbr = str(regexp(str,'\<[A-Z]\w*'));