strsplit

Divide um texto nos delimitadores, gerando um cell array com as partes.

Categoria: Language Fundamentals > Data Types

Sintaxe

C = strsplit(str)

Divide nos espaços em branco.

C = strsplit(str, delimiter)

Divide em um delimitador, ou em qualquer um de vários dados em um cell array.

C = strsplit(str, delimiter, 'CollapseDelimiters', tf)

Controla se delimitadores consecutivos contam como um só (padrão true).

Descrição

Por padrão, delimitadores adjacentes são fundidos em um só, então 'one two three' se divide em três partes mesmo havendo dois espaços. Defina 'CollapseDelimiters' como false para obter uma parte vazia entre cada par de delimitadores, o que preserva o número de campos de uma linha CSV com campos vazios.

A operação inversa é strjoin. Para arrays de strings, o equivalente é split.

Argumentos de entrada

str
Vetor de caracteres ou string.
delimiter
Texto delimitador ou cell array de delimitadores; sequências de escape como '\t' são interpretadas.
'CollapseDelimiters'
Lógico, padrão true.

Argumentos de saída

C
Cell array 1-por-N de vetores de caracteres.

Exemplo

Delimitadores simples, múltiplos e campos vazios

strsplit('a,b,,c', ',', 'CollapseDelimiters', false)
strsplit('one two  three')
strsplit('a-b_c', {'-','_'})
Saída
ans = 1×4 cell

    {'a'}    {'b'}    {0×0 char}    {'c'}
ans = 1×3 cell

    {'one'}    {'two'}    {'three'}
ans = 1×3 cell

    {'a'}    {'b'}    {'c'}

Veja também

strjoin split regexp textscan strtok