Операции над строками
- strncmp('strT, 'str2',n) – возвращает логическую единицу, если две сравниваемые строки str1 и str2 содержат n первых идентичных символов, и логический ноль в противном случае. Аргументы str1 и str2 могут быть также строковыми массивами ячеек.
- TF = strncmp(S,T,n) – возвращает строковый массив ячеек TF, содержащий единицы для идентичных (до n символов) элементов массивов S и Т и нули для всех остальных.
Примеры:
>
>
str1
=
'computer'
str1
=
computer
>
>
str1
=
'computer for me'
str1
=
computer
for
me
>
>
k
=
strncmp(str1.str2.
3
)
k
=
1
>
>
k
=
strncmp(str1,str2.
12
)
L
=
0
- strmatch('str',STRS, 'exact') – возвращает только индексы строк символов массива STRS, точно совпадающих со строкой символов str;
- strjust(S) – возвращает выровненный вправо массив символов (т. е. перемещает пробелы в конце рядов массива символов, если они есть, в начало тех же рядов) [Функция strjusttS, 'left') возвращает массив символов, где все строки выровнены влево, a strjusttS. 'center') – где все строки выровнены по центру.– Примеч.ред.];
- strmatch('str',STRS) – просматривает массив символов или строковый массив ячеек STRS по строкам, находит строки символов, начинающиеся с строки str, и возвращает соответствующие индексы строк;
Пример:
>
>
STRS{
1.1
}
=
'character'
:
>
>
STRS{
1.2
}
=
'array'
;
>
>
STRS{
2.1
}
=
'character array'
:
>
>
STRS{
2.2
}
=
'string'
:
>
>
STRS
STRS
=
'character'
'array'
'character array'
'string'
>
>
i
=
strmatchCcharac.STRS)
i
=
1
2
>
>
i
=
strmatch(
'character'
.STRS.
'exact'
)
i
=
1
- strrep(str1,str2,str3) – заменяет все подстроки str2, найденные внутри строки символов str1 на строку str3;
- strrep(str1,str2,str3) – возвращает строковый массив ячеек, полученный в результате выполнения функции strrep над соответствующими рядами входных массивов символов или ячеек, если один из аргументов str1, str2 или str3 – строковый массив ячеек. В этом случае любой из аргументов может быть также скалярной ячейкой.
Пример:
>
>
strl
=
'This is a good example for me.'
:
>
>
str2
=
'good'
;
>
>
str3
=
'best'
;
>
>
str
=
strrep(str1.str2.str3)
str
=
This is a best example
for
me.
- strtok(str'.delimiter) – возвращает часть текстовой строки str, ограниченную с ее конца разделителем delimiter. Символы-разделители в начале строки игнорируются. Вектор delimiter содержит возможные символы-разделители;
- strtok('str') – использует символ-разделитель по умолчанию ("белое пространство"). Реальными символами-разделителями при этом являются символ табуляции (ASCII-код 9), символ возврата каретки (ASCII-код 13) и пробел (ASCII-код 32);
- [token,rem]=strtok(…) – возвращает остаток rem исходной строки.
Примеры:
>
>
str
=
'This is a good example for me.'
:
>
>
token
=
strtok(str)
token
=
This
>
>
token
=
strtok(str.
'f'
)
token
=
This is a good example
>
>
[token,rem]
=
strtok(str)
token
=
This
rem
=
is a good example
for
me.