Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português - 日本語
Справка Scilab >> Строки > strsplit

strsplit

деление строки на вектор строк

Синтаксис

v = strsplit(str,ind)
[v, matched_separators] = strsplit(str)
[v, matched_separators] = strsplit(str, matrix_of_strings, limit)
[v, matched_separators] = strsplit(str, regexp_pattern, limit)

Аргументы

str

символьная строка, которую следует разделить.

ind

вектор индексов в строго возрастающем порядке в интервале [1 length(str)-1].

v

результирующий вектор-столбец строк (размер >size(ind,'*')+1).

matched_separators

вектор-столбец совпавших разделителей.

matrix_of_strings

матрица строк, которые ищутся в str.

regexp_pattern

шаблон регулярного выражения.

limit

максимальный предел элементов.

Описание

v= strsplit(str, ind) делит строку str на вектор строк в местах, указанных с помощью индексов ind (после каждого символа, на который указывает индекс в ind).

strsplit(str) возвращает то же, что и strsplit(str,1:length(str)-1).

strsplit(str, regexp_pattern, limit) возвращает вектор строк, каждая из которых является подстрокой из str, сформированной делением str на интервалы, сформированные шаблоном регулярного выражения, чувствительного к регистру.

Если есть n совпадений с шаблоном, то возвращённый массив будет содержать n+1 элементов.

Например, если нет совпадений с шаблоном, то будет возвращён массив только с одним элементом. Конечно это так же будет и в случае, когда str пустая.

Если установлен предел limit, то возвращённый массив будет содержать максимальное разрешённое количество элементов с последним элементом, содержащим весь остаток строки.

strsplit(str, matrix_of_strings, limit) делит str любое количество элементов. Это позволяет пользователям, не знающим регулярные выражения, делить по разным разделителям.

Если вызывается strsplit() со вторым выходным аргументом, то возвращается вектор-столбец совпавших разделителей.

Примеры

S='strsplit делит строку на вектор строк';
strsplit(S,[15 21 25])
ind=strindex(S,' ')

[r_1, r_2] = strsplit("abcd")

[r_1, r_2] = strsplit("root:x:0:0:root:/root:/bin/bash",":",5)

[r_1, r_2] = strsplit("abc,def:ijk,:lmo","/:|,/")

[r_1, r_2] = strsplit("abc,def:ijk,:lmo",[":";","])

strsplit("abcdef2ghijkl3mnopqr6stuvw7xyz","/\d+/")

[r_1, r_2] = strsplit("abcdef2ghijkl3mnopqr6stuvw7xyz","/\d+/",2)

Смотрите также

  • part — выделение строк
  • strcat — связывает символьные строки
  • tokens — возвращает лексемы символьной строки
  • regexp — поиск подстроки, соответствующей строке регулярного выражения
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Feb 14 15:13:26 CET 2017