Regex.Split Método

Definição

Divide uma cadeia de entrada numa matriz de subcadeias nas posições definidas por uma correspondência de expressões regulares.

Sobrecargas

Name Descrição
Split(String, String, RegexOptions, TimeSpan)

Divide uma cadeia de entrada numa matriz de subcadeias nas posições definidas por um padrão de expressão regular especificado. Parâmetros adicionais especificam opções que modificam a operação de correspondência e um intervalo de time-out caso não seja encontrada correspondência.

Split(String, String, RegexOptions)

Divide uma cadeia de entrada numa matriz de subcadeias nas posições definidas por um padrão de expressão regular especificado. As opções especificadas modificam a operação de correspondência.

Split(String, Int32, Int32)

Divide uma cadeia de entrada um número máximo especificado de vezes num array de subcades, nas posições definidas por uma expressão regular especificada no Regex construtor. A procura pelo padrão de expressão regular começa numa posição específica de carácter na cadeia de entrada.

Split(String, String)

Divide uma cadeia de entrada numa matriz de subcadeias nas posições definidas por um padrão de expressão regular.

Split(String)

Divide uma cadeia de entrada numa matriz de subcadeias nas posições definidas por um padrão de expressão regular especificado no Regex construtor.

Split(String, Int32)

Divide uma cadeia de entrada um número máximo especificado de vezes num array de subcades, nas posições definidas por uma expressão regular especificada no Regex construtor.

Split(String, String, RegexOptions, TimeSpan)

Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs

Divide uma cadeia de entrada numa matriz de subcadeias nas posições definidas por um padrão de expressão regular especificado. Parâmetros adicionais especificam opções que modificam a operação de correspondência e um intervalo de time-out caso não seja encontrada correspondência.

public:
 static cli::array <System::String ^> ^ Split(System::String ^ input, System::String ^ pattern, System::Text::RegularExpressions::RegexOptions options, TimeSpan matchTimeout);
public static string[] Split(string input, string pattern, System.Text.RegularExpressions.RegexOptions options, TimeSpan matchTimeout);
static member Split : string * string * System.Text.RegularExpressions.RegexOptions * TimeSpan -> string[]
Public Shared Function Split (input As String, pattern As String, options As RegexOptions, matchTimeout As TimeSpan) As String()

Parâmetros

input
String

O fio para partir.

pattern
String

O padrão de expressão regular para corresponder.

options
RegexOptions

Uma combinação bit a bit dos valores de enumeração que fornece opções para correspondência.

matchTimeout
TimeSpan

Um intervalo de time-out, ou InfiniteMatchTimeout para indicar que o método não deve expirar.

Devoluções

String[]

Uma matriz de cadeias de caracteres.

Exceções

Ocorreu um erro de análise sintática de expressões regulares.

input ou pattern é null.

options não é uma combinação válida de RegexOptions valores bit a bit. -ou- matchTimeout é negativo, zero ou superior a aproximadamente 24 dias.

Houve um castigo.

Observações

Os métodos estáticos Split(String, String, RegexOptions, TimeSpan) são equivalentes a construir um Regex objeto com o padrão de expressão regular especificado e chamar o método Split(String)de instância .

Os métodos Regex.Split são semelhantes ao Split(Char[]) método, exceto que Regex.Split divide a cadeia num delimitador determinado por uma expressão regular em vez de um conjunto de caracteres. Se o padrão de expressão regular incluir a captura de parênteses, o texto capturado é incluído no array de strings resultante. Se o padrão incluir a captura de parênteses, qualquer texto capturado é incluído no array de cadeias resultante, mas não é contado ao determinar se o limite de contagem foi atingido.

Se forem encontradas duas correspondências adjacentes, uma cadeia vazia é colocada no array.

Se especificar RightToLeft o options parâmetro, a pesquisa por correspondências começa no final da cadeia de entrada e move-se para a esquerda.

O matchTimeout parâmetro especifica quanto tempo um método de correspondência de padrões deve tentar encontrar uma correspondência antes de expirar. matchTimeout Sobrepõe qualquer valor de time-out padrão definido para o domínio de aplicação onde o método é executado.

Notas para Chamadores

Recomendamos que defina o matchTimeout parâmetro para um valor apropriado, como dois segundos. Se desativar os tempos de espera especificando InfiniteMatchTimeout, o motor de expressão regular oferece um desempenho ligeiramente melhor. No entanto, deve desativar os tempos de espera apenas nas seguintes condições:

  • Quando a entrada processada por uma expressão regular é derivada de uma fonte conhecida e de confiança ou consiste em texto estático. Isto exclui texto que tenha sido introduzido dinamicamente pelos utilizadores.

  • Quando o padrão de expressão regular foi cuidadosamente testado para garantir que lida eficientemente com correspondências, não correspondências e próximas correspondências.

  • Quando o padrão de expressão regular não contém elementos de linguagem, conhecidos por causar retrocesso excessivo ao processar uma correspondência próxima.

Ver também

Aplica-se a

Split(String, String, RegexOptions)

Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs

Divide uma cadeia de entrada numa matriz de subcadeias nas posições definidas por um padrão de expressão regular especificado. As opções especificadas modificam a operação de correspondência.

public:
 static cli::array <System::String ^> ^ Split(System::String ^ input, System::String ^ pattern, System::Text::RegularExpressions::RegexOptions options);
public static string[] Split(string input, string pattern, System.Text.RegularExpressions.RegexOptions options);
static member Split : string * string * System.Text.RegularExpressions.RegexOptions -> string[]
Public Shared Function Split (input As String, pattern As String, options As RegexOptions) As String()

Parâmetros

input
String

O fio para partir.

pattern
String

O padrão de expressão regular para corresponder.

options
RegexOptions

Uma combinação bit a bit dos valores de enumeração que fornece opções para correspondência.

Devoluções

String[]

Uma matriz de cadeias de caracteres.

Exceções

Ocorreu um erro de análise sintática de expressões regulares.

input ou pattern é null.

options não é uma combinação válida de RegexOptions valores bit a bit.

Houve um castigo.

Observações

Os métodos estáticos Split(String, String, RegexOptions) são equivalentes a construir um Regex objeto com o padrão de expressão regular especificado e chamar o método Split(String)de instância .

Os métodos Regex.Split são semelhantes ao Split(Char[]) método, exceto que Regex.Split divide a cadeia num delimitador determinado por uma expressão regular em vez de um conjunto de caracteres. Se o padrão de expressão regular incluir a captura de parênteses, o texto capturado é incluído no array de strings resultante. Se o padrão incluir a captura de parênteses, qualquer texto capturado é incluído no array de cadeias resultante, mas não é contado ao determinar se o limite de contagem foi atingido.

Se forem encontradas duas correspondências adjacentes, uma cadeia vazia é colocada no array.

Se especificar RightToLeft o options parâmetro, a pesquisa por correspondências começa no final da cadeia de entrada e move-se para a esquerda.

Notas para Chamadores

Este método expira após um intervalo igual ao valor padrão de time-out do domínio de aplicação onde o método é chamado. Se não tiver sido definido um valor de time-out para o domínio de aplicação, utiliza-se o valor InfiniteMatchTimeout, que impede que o método expire. O método estático recomendado para separar texto numa correspondência de padrão é Split(String, String, RegexOptions, TimeSpan), que permite definir o intervalo de time-out.

Ver também

Aplica-se a

Split(String, Int32, Int32)

Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs

Divide uma cadeia de entrada um número máximo especificado de vezes num array de subcades, nas posições definidas por uma expressão regular especificada no Regex construtor. A procura pelo padrão de expressão regular começa numa posição específica de carácter na cadeia de entrada.

public:
 cli::array <System::String ^> ^ Split(System::String ^ input, int count, int startat);
public string[] Split(string input, int count, int startat);
member this.Split : string * int * int -> string[]
Public Function Split (input As String, count As Integer, startat As Integer) As String()

Parâmetros

input
String

O fio para partir.

count
Int32

O número máximo de vezes que a divisão pode ocorrer.

startat
Int32

A posição do carácter na cadeia de entrada onde a pesquisa começa.

Devoluções

String[]

Uma matriz de cadeias de caracteres.

Exceções

input é null.

startat é menor que zero ou maior que o comprimento de input.

Houve um castigo.

Observações

Para mais detalhes sobre startat, veja a secção Observações de Match(String, Int32).

Se forem usados parênteses de captura na expressão, qualquer texto capturado é incluído no array de cadeias resultante, mas não é contado para o count limite.

As cadeias vazias que resultam de correspondências adjacentes são contadas ao determinar se o número de correspondências atingiu count.

Ver também

Aplica-se a

Split(String, String)

Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs

Divide uma cadeia de entrada numa matriz de subcadeias nas posições definidas por um padrão de expressão regular.

public:
 static cli::array <System::String ^> ^ Split(System::String ^ input, System::String ^ pattern);
public static string[] Split(string input, string pattern);
static member Split : string * string -> string[]
Public Shared Function Split (input As String, pattern As String) As String()

Parâmetros

input
String

O fio para partir.

pattern
String

O padrão de expressão regular para corresponder.

Devoluções

String[]

Uma matriz de cadeias de caracteres.

Exceções

Ocorreu um erro de análise sintática de expressões regulares.

input ou pattern é null.

Houve um castigo.

Observações

Os métodos estáticos Split(String, String) são equivalentes a construir um Regex objeto com o padrão de expressão regular especificado e chamar o método Split(String)de instância .

Os métodos Regex.Split são semelhantes ao Split(Char[]) método, exceto que Regex.Split divide a cadeia num delimitador determinado por uma expressão regular em vez de um conjunto de caracteres. Se o padrão de expressão regular incluir a captura de parênteses, o texto capturado é incluído no array de strings resultante. Se o padrão incluir a captura de parênteses, qualquer texto capturado é incluído no array de cadeias resultante, mas não é contado ao determinar se o limite de contagem foi atingido.

Se forem encontradas duas correspondências adjacentes, uma cadeia vazia é colocada no array.

Notas para Chamadores

Este método expira após um intervalo igual ao valor padrão de time-out do domínio de aplicação onde o método é chamado. Se não tiver sido definido um valor de time-out para o domínio de aplicação, utiliza-se o valor InfiniteMatchTimeout, que impede que o método expire. O método estático recomendado para separar texto numa correspondência de padrão é Split(String, String, RegexOptions, TimeSpan), que permite definir o intervalo de time-out.

Ver também

Aplica-se a

Split(String)

Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs

Divide uma cadeia de entrada numa matriz de subcadeias nas posições definidas por um padrão de expressão regular especificado no Regex construtor.

public:
 cli::array <System::String ^> ^ Split(System::String ^ input);
public string[] Split(string input);
member this.Split : string -> string[]
Public Function Split (input As String) As String()

Parâmetros

input
String

O fio para partir.

Devoluções

String[]

Uma matriz de cadeias de caracteres.

Exceções

input é null.

Houve um castigo.

Observações

Os métodos Regex.Split são semelhantes ao Split(Char[]) método, exceto que Regex.Split divide a cadeia num delimitador determinado por uma expressão regular em vez de um conjunto de caracteres. A corda é partida o maior número possível de vezes. Se não for encontrada correspondência, o valor de retorno contém um elemento cujo valor é a cadeia de entrada original.

Se a expressão regular conseguir corresponder à cadeia vazia, Split(String) irá dividir a cadeia numa matriz de cadeias de caracteres únicos porque o delimitador de cadeias vazio pode ser encontrado em todos os locais.

Se forem usados parênteses de captura na expressão, qualquer texto capturado é incluído no array de cadeias resultante.

Se forem encontradas duas correspondências adjacentes, uma cadeia vazia é colocada no array.

Ver também

Aplica-se a

Split(String, Int32)

Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs
Origem:
Regex.Split.cs

Divide uma cadeia de entrada um número máximo especificado de vezes num array de subcades, nas posições definidas por uma expressão regular especificada no Regex construtor.

public:
 cli::array <System::String ^> ^ Split(System::String ^ input, int count);
public string[] Split(string input, int count);
member this.Split : string * int -> string[]
Public Function Split (input As String, count As Integer) As String()

Parâmetros

input
String

O fio para partir.

count
Int32

O número máximo de vezes que a divisão pode ocorrer.

Devoluções

String[]

Uma matriz de cadeias de caracteres.

Exceções

input é null.

Houve um castigo.

Observações

Os métodos Regex.Split são semelhantes a Split(Char[]). O count parâmetro especifica o número máximo de substrings em que a string de entrada pode ser dividida; a última string contém o resto não dividido da sequência. Um count valor zero fornece o comportamento padrão de dividir o maior número possível de vezes.

Se forem usados parênteses de captura na expressão, qualquer texto capturado é incluído no array de cadeias resultante, mas não é contado para o count limite.

As cadeias vazias que resultam de correspondências adjacentes são contadas ao determinar se o número de correspondências atingiu count.

Ver também

Aplica-se a