- Справка Scilab
 - Строки
 - ascii
 - asciimat
 - blanks
 - char
 - convstr
 - emptystr
 - eval
 - evstr
 - grep
 - isalphanum
 - isascii
 - isdigit
 - isletter
 - isnum
 - justify
 - length
 - part
 - regexp
 - sci2exp
 - strcat
 - strchr
 - strcmp
 - strcmpi
 - strcspn
 - strindex
 - string
 - strings
 - stripblanks
 - strncpy
 - strrchr
 - strrev
 - strsplit
 - strspn
 - strstr
 - strsubst
 - strtod
 - strtok
 - tokenpos
 - tokens
 
Please note that the recommended version of Scilab is 2026.0.0. This page might be outdated.
See the recommended documentation of this function
strindex
поиск положения символьной строки в другой строке
Последовательность вызова
ind = strindex(haystack, needle, [flag]) [ind, which] = strindex(haystack, needle, [flag])
Аргументы
- haystack
 символьная строка. Строка, в которой ищутся совпадения с
needle.- needle
 символьная строка или вектор символьных строк. Строка (строки) которая ищется в
haystack.- ind
 вектор индексов.
- which
 вектор индексов.
- flag
 строка (
"r"для регулярного выражения).
Описание
Функция strindex ищет индексы, где найдена
            needle(i) в haystack.
Для каждого k существует такая
            i, что part(haystack,ind(k)+(0:length(needle(i))-1))
            является той же самой строкой, что и needle(i).
            Если указан аргумент which, то он содержит эти
            i. Когда используется третий параметр
            "r", то needle должна быть
            строкой регулярного выражения, и тогда
            strindex будет сравнивать её с
            haystack по правилам регулярного выражения.
strindex без аргумента регулярного выражения
            основывается на алгоритме Кнута-Морриса-Пратта [Knuth-Morris-Pratt].
Этот алгоритм более мощный, чем тот, который использовался в Scilab 4.x. В некоторых частных случаях результат может быть различным.
Пример:
// Scilab 5.x
-->[k,w]=strindex('aab',['a','ab'])
w = 1. 1. 2. k = 1. 2. 2.
// Scilab 4.x
-->[k,w]=strindex('aab',['a','ab'])
w = 1. 1. k = 1. 2.
Правила регулярного выражения сходны с языком Perl. Для быстрого старта см.http://perldoc.perl.org/perlrequick.html. Для более глубокого изучения см. http://perldoc.perl.org/perlretut.html, а для справки см. http://perldoc.perl.org/perlre.html.
Примеры
k=strindex('SCI/demos/scicos','/') k=strindex('SCI/demos/scicos','SCI/') k=strindex('SCI/demos/scicos','!') k=strindex('aaaaa','aa') k=strindex('SCI/demos/scicos',['SCI','sci']) [k,w]=strindex('1+3*abc/2.33',['+','-','*','/']) k=strindex('2' ,'/2(]*)?$\1/' ,'r')
Смотрите также
| Report an issue | ||
| << strcspn | Строки | string >> |