Regex.Split Metodo

Definizione

Suddivide una stringa di input in una matrice di sottostringhe in corrispondenza delle posizioni definite da una corrispondenza di espressione regolare.

Overload

Nome Descrizione
Split(String, String, RegexOptions, TimeSpan)

Suddivide una stringa di input in una matrice di sottostringhe in corrispondenza delle posizioni definite da un criterio di espressione regolare specificato. Parametri aggiuntivi specificano opzioni che modificano l'operazione di corrispondenza e un intervallo di timeout se non viene trovata alcuna corrispondenza.

Split(String, String, RegexOptions)

Suddivide una stringa di input in una matrice di sottostringhe in corrispondenza delle posizioni definite da un criterio di espressione regolare specificato. Le opzioni specificate modificano l'operazione corrispondente.

Split(String, Int32, Int32)

Suddivide una stringa di input un numero massimo di volte specificato in una matrice di sottostringhe, in corrispondenza delle posizioni definite da un'espressione Regex regolare specificata nel costruttore. La ricerca del criterio di espressione regolare inizia in corrispondenza di una posizione di caratteri specificata nella stringa di input.

Split(String, String)

Suddivide una stringa di input in una matrice di sottostringhe in corrispondenza delle posizioni definite da un criterio di espressione regolare.

Split(String)

Suddivide una stringa di input in una matrice di sottostringhe nelle posizioni definite da un criterio di espressione regolare specificato nel Regex costruttore.

Split(String, Int32)

Suddivide una stringa di input un numero massimo di volte specificato in una matrice di sottostringhe, in corrispondenza delle posizioni definite da un'espressione Regex regolare specificata nel costruttore.

Split(String, String, RegexOptions, TimeSpan)

Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs

Suddivide una stringa di input in una matrice di sottostringhe in corrispondenza delle posizioni definite da un criterio di espressione regolare specificato. Parametri aggiuntivi specificano opzioni che modificano l'operazione di corrispondenza e un intervallo di timeout se non viene trovata alcuna corrispondenza.

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()

Parametri

input
String

Stringa da dividere.

pattern
String

Modello di espressione regolare da trovare in corrispondenza.

options
RegexOptions

Combinazione bit per bit dei valori di enumerazione che forniscono opzioni per la corrispondenza.

matchTimeout
TimeSpan

Intervallo di timeout o InfiniteMatchTimeout per indicare che il metodo non deve scadere.

Valori restituiti

String[]

Matrice di stringhe.

Eccezioni

Si è verificato un errore di analisi delle espressioni regolari.

input o pattern è null.

options non è una combinazione bit per bit valida di RegexOptions valori. -oppure- matchTimeout è negativo, zero o maggiore di circa 24 giorni.

Si è verificato un timeout.

Commenti

I metodi statici sono equivalenti Split(String, String, RegexOptions, TimeSpan) alla costruzione di un Regex oggetto con il criterio di espressione regolare specificato e la chiamata al metodo Split(String)di istanza .

I metodi Regex.Split sono simili al metodo , ad eccezione del Split(Char[]) fatto che Regex.Split divide la stringa in corrispondenza di un delimitatore determinato da un'espressione regolare anziché da un set di caratteri. Se il criterio di espressione regolare include le parentesi di acquisizione, il testo acquisito viene incluso nella matrice di stringhe risultante. Se il criterio include parentesi di acquisizione, qualsiasi testo acquisito viene incluso nella matrice di stringhe risultante, ma non viene conteggiato quando si determina se è stato raggiunto il limite di conteggio.

Se vengono trovate due corrispondenze adiacenti, nella matrice viene inserita una stringa vuota.

Se si specifica RightToLeft per il options parametro , la ricerca delle corrispondenze inizia alla fine della stringa di input e si sposta a sinistra.

Il matchTimeout parametro specifica per quanto tempo un metodo di corrispondenza dei criteri deve tentare di trovare una corrispondenza prima del timeout. matchTimeout Esegue l'override di qualsiasi valore di timeout predefinito definito per il dominio applicazione in cui viene eseguito il metodo.

Note per i chiamanti

È consigliabile impostare il matchTimeout parametro su un valore appropriato, ad esempio due secondi. Se si disabilitano i timeout specificando InfiniteMatchTimeout, il motore delle espressioni regolari offre prestazioni leggermente migliori. Tuttavia, è consigliabile disabilitare i timeout solo nelle condizioni seguenti:

  • Quando l'input elaborato da un'espressione regolare è derivato da un'origine nota e attendibile o è costituito da testo statico. Questo esclude il testo che è stato immesso dinamicamente dagli utenti.

  • Quando il criterio di espressione regolare è stato testato accuratamente per garantire che gestisca in modo efficiente corrispondenze, non corrispondenze e corrispondenze vicine.

  • Quando il criterio di espressione regolare non contiene elementi del linguaggio noti per causare un backtracking eccessivo durante l'elaborazione di una corrispondenza vicina.

Vedi anche

Si applica a

Split(String, String, RegexOptions)

Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs

Suddivide una stringa di input in una matrice di sottostringhe in corrispondenza delle posizioni definite da un criterio di espressione regolare specificato. Le opzioni specificate modificano l'operazione corrispondente.

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()

Parametri

input
String

Stringa da dividere.

pattern
String

Modello di espressione regolare da trovare in corrispondenza.

options
RegexOptions

Combinazione bit per bit dei valori di enumerazione che forniscono opzioni per la corrispondenza.

Valori restituiti

String[]

Matrice di stringhe.

Eccezioni

Si è verificato un errore di analisi delle espressioni regolari.

input o pattern è null.

options non è una combinazione bit per bit valida di RegexOptions valori.

Si è verificato un timeout.

Commenti

I metodi statici sono equivalenti Split(String, String, RegexOptions) alla costruzione di un Regex oggetto con il criterio di espressione regolare specificato e la chiamata al metodo Split(String)di istanza .

I metodi Regex.Split sono simili al metodo , ad eccezione del Split(Char[]) fatto che Regex.Split divide la stringa in corrispondenza di un delimitatore determinato da un'espressione regolare anziché da un set di caratteri. Se il criterio di espressione regolare include le parentesi di acquisizione, il testo acquisito viene incluso nella matrice di stringhe risultante. Se il criterio include parentesi di acquisizione, qualsiasi testo acquisito viene incluso nella matrice di stringhe risultante, ma non viene conteggiato quando si determina se è stato raggiunto il limite di conteggio.

Se vengono trovate due corrispondenze adiacenti, nella matrice viene inserita una stringa vuota.

Se si specifica RightToLeft per il options parametro , la ricerca delle corrispondenze inizia alla fine della stringa di input e si sposta a sinistra.

Note per i chiamanti

Questo metodo si verifica il timeout dopo un intervallo uguale al valore di timeout predefinito del dominio applicazione in cui viene chiamato il metodo . Se per il dominio applicazione non è stato definito un valore di timeout, viene usato il valore InfiniteMatchTimeout, che impedisce il timeout del metodo. Il metodo statico consigliato per la suddivisione del testo in una corrispondenza del criterio è Split(String, String, RegexOptions, TimeSpan), che consente di impostare l'intervallo di timeout.

Vedi anche

Si applica a

Split(String, Int32, Int32)

Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs

Suddivide una stringa di input un numero massimo di volte specificato in una matrice di sottostringhe, in corrispondenza delle posizioni definite da un'espressione Regex regolare specificata nel costruttore. La ricerca del criterio di espressione regolare inizia in corrispondenza di una posizione di caratteri specificata nella stringa di input.

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()

Parametri

input
String

Stringa da dividere.

count
Int32

Numero massimo di volte in cui può verificarsi la divisione.

startat
Int32

Posizione del carattere nella stringa di input in cui inizia la ricerca.

Valori restituiti

String[]

Matrice di stringhe.

Eccezioni

input è null.

startat è minore di zero o maggiore della lunghezza di input.

Si è verificato un timeout.

Commenti

Per altre informazioni su startat, vedere la sezione Osservazioni di Match(String, Int32).

Se le parentesi di acquisizione vengono usate nell'espressione, qualsiasi testo acquisito viene incluso nella matrice di stringhe risultante ma non viene conteggiato per il count limite.

Le stringhe vuote risultanti da corrispondenze adiacenti vengono conteggiate quando si determina se il numero di corrispondenze ha raggiunto count.

Vedi anche

Si applica a

Split(String, String)

Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs

Suddivide una stringa di input in una matrice di sottostringhe in corrispondenza delle posizioni definite da un criterio di espressione regolare.

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()

Parametri

input
String

Stringa da dividere.

pattern
String

Modello di espressione regolare da trovare in corrispondenza.

Valori restituiti

String[]

Matrice di stringhe.

Eccezioni

Si è verificato un errore di analisi delle espressioni regolari.

input o pattern è null.

Si è verificato un timeout.

Commenti

I metodi statici sono equivalenti Split(String, String) alla costruzione di un Regex oggetto con il criterio di espressione regolare specificato e la chiamata al metodo Split(String)di istanza .

I metodi Regex.Split sono simili al metodo , ad eccezione del Split(Char[]) fatto che Regex.Split divide la stringa in corrispondenza di un delimitatore determinato da un'espressione regolare anziché da un set di caratteri. Se il criterio di espressione regolare include le parentesi di acquisizione, il testo acquisito viene incluso nella matrice di stringhe risultante. Se il criterio include parentesi di acquisizione, qualsiasi testo acquisito viene incluso nella matrice di stringhe risultante, ma non viene conteggiato quando si determina se è stato raggiunto il limite di conteggio.

Se vengono trovate due corrispondenze adiacenti, nella matrice viene inserita una stringa vuota.

Note per i chiamanti

Questo metodo si verifica il timeout dopo un intervallo uguale al valore di timeout predefinito del dominio applicazione in cui viene chiamato il metodo . Se per il dominio applicazione non è stato definito un valore di timeout, viene usato il valore InfiniteMatchTimeout, che impedisce il timeout del metodo. Il metodo statico consigliato per la suddivisione del testo in una corrispondenza del criterio è Split(String, String, RegexOptions, TimeSpan), che consente di impostare l'intervallo di timeout.

Vedi anche

Si applica a

Split(String)

Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs

Suddivide una stringa di input in una matrice di sottostringhe nelle posizioni definite da un criterio di espressione regolare specificato nel Regex costruttore.

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()

Parametri

input
String

Stringa da dividere.

Valori restituiti

String[]

Matrice di stringhe.

Eccezioni

input è null.

Si è verificato un timeout.

Commenti

I metodi Regex.Split sono simili al metodo , ad eccezione del Split(Char[]) fatto che Regex.Split divide la stringa in corrispondenza di un delimitatore determinato da un'espressione regolare anziché da un set di caratteri. La stringa viene divisa il maggior numero possibile di volte. Se non viene trovata alcuna corrispondenza, il valore restituito contiene un elemento il cui valore è la stringa di input originale.

Se l'espressione regolare può corrispondere alla stringa vuota, Split(String) suddividerà la stringa in una matrice di stringhe a carattere singolo perché il delimitatore stringa vuoto può essere trovato in ogni posizione.

Se le parentesi di acquisizione vengono usate nell'espressione, qualsiasi testo acquisito viene incluso nella matrice di stringhe risultante.

Se vengono trovate due corrispondenze adiacenti, nella matrice viene inserita una stringa vuota.

Vedi anche

Si applica a

Split(String, Int32)

Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs
Origine:
Regex.Split.cs

Suddivide una stringa di input un numero massimo di volte specificato in una matrice di sottostringhe, in corrispondenza delle posizioni definite da un'espressione Regex regolare specificata nel costruttore.

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()

Parametri

input
String

Stringa da dividere.

count
Int32

Numero massimo di volte in cui può verificarsi la divisione.

Valori restituiti

String[]

Matrice di stringhe.

Eccezioni

input è null.

Si è verificato un timeout.

Commenti

I metodi Regex.Split sono simili a Split(Char[]). Il count parametro specifica il numero massimo di sottostringhe in cui è possibile suddividere la stringa di input. L'ultima stringa contiene il resto senzasplit della stringa. Un count valore pari a zero fornisce il comportamento predefinito della suddivisione il maggior numero possibile di volte.

Se le parentesi di acquisizione vengono usate nell'espressione, qualsiasi testo acquisito viene incluso nella matrice di stringhe risultante ma non viene conteggiato per il count limite.

Le stringhe vuote risultanti da corrispondenze adiacenti vengono conteggiate quando si determina se il numero di corrispondenze ha raggiunto count.

Vedi anche

Si applica a