Прочитать на английском

Поделиться через


Regex.EnumerateSplits Метод

Определение

Перегрузки

EnumerateSplits(ReadOnlySpan<Char>)

Выполняет поиск входного диапазона для всех вхождений регулярного выражения и возвращает Regex.ValueSplitEnumerator для итерации по разбиениям вокруг совпадений.

EnumerateSplits(ReadOnlySpan<Char>, Int32)

Выполняет поиск входного диапазона для всех вхождений регулярного выражения и возвращает Regex.ValueSplitEnumerator для итерации по разбиениям вокруг совпадений.

EnumerateSplits(ReadOnlySpan<Char>, String)

Выполняет поиск входного диапазона для всех вхождений регулярного выражения и возвращает Regex.ValueSplitEnumerator для итерации по разбиениям вокруг совпадений.

EnumerateSplits(ReadOnlySpan<Char>, Int32, Int32)

Выполняет поиск входного диапазона для всех вхождений регулярного выражения и возвращает Regex.ValueSplitEnumerator для итерации по разбиениям вокруг совпадений.

EnumerateSplits(ReadOnlySpan<Char>, String, RegexOptions)

Выполняет поиск входного диапазона для всех вхождений регулярного выражения и возвращает Regex.ValueSplitEnumerator для итерации по разбиениям вокруг совпадений.

EnumerateSplits(ReadOnlySpan<Char>, String, RegexOptions, TimeSpan)

Выполняет поиск входного диапазона для всех вхождений регулярного выражения и возвращает Regex.ValueSplitEnumerator для итерации по разбиениям вокруг совпадений.

EnumerateSplits(ReadOnlySpan<Char>)

Исходный код:
Regex.EnumerateSplits.cs
Исходный код:
Regex.EnumerateSplits.cs

Выполняет поиск входного диапазона для всех вхождений регулярного выражения и возвращает Regex.ValueSplitEnumerator для итерации по разбиениям вокруг совпадений.

public System.Text.RegularExpressions.Regex.ValueSplitEnumerator EnumerateSplits(ReadOnlySpan<char> input);

Параметры

input
ReadOnlySpan<Char>

Диапазон для поиска совпадения.

Возвращаемое значение

Regex.ValueSplitEnumerator, чтобы выполнить итерацию по совпадениям.

Комментарии

Поведение EnumerateSplits(ReadOnlySpan<Char>) аналогично поведению Split(String), создавая разбиения по одному в рамках итерации результирующего перечислителя, а не всех одновременно в составе одного массива. Однако есть несколько заметных различий. Split(String) будет включать содержимое групп записи в результирующий раздел, в то время как EnumerateSplits(ReadOnlySpan<Char>) не будет. И если RightToLeft задано, Split(String) изменит порядок результирующего раскола слева направо, в то время как EnumerateSplits(ReadOnlySpan<Char>) даст расколы в порядке их обнаружения справа налево.

Каждое совпадение на самом деле не произойдет, пока MoveNext() не будет вызван на перечислитель, при этом выполняется одно совпадение для каждого вызова MoveNext(). Так как оценка совпадения выполняется лениво, любые изменения переданных входных данных между вызовами MoveNext() могут повлиять на результаты сопоставления; такие изменения следует избегать и не поддерживать.

Применяется к

.NET 10 и .NET 9
Продукт Версии
.NET 9, 10

EnumerateSplits(ReadOnlySpan<Char>, Int32)

Исходный код:
Regex.EnumerateSplits.cs
Исходный код:
Regex.EnumerateSplits.cs

Выполняет поиск входного диапазона для всех вхождений регулярного выражения и возвращает Regex.ValueSplitEnumerator для итерации по разбиениям вокруг совпадений.

public System.Text.RegularExpressions.Regex.ValueSplitEnumerator EnumerateSplits(ReadOnlySpan<char> input, int count);

Параметры

input
ReadOnlySpan<Char>

Диапазон для поиска совпадения.

count
Int32

Максимальное количество раз, когда может произойти разделение. Если значение 0, все разбиения доступны.

Возвращаемое значение

Regex.ValueSplitEnumerator, чтобы выполнить итерацию по совпадениям.

Комментарии

Поведение EnumerateSplits(ReadOnlySpan<Char>, Int32) аналогично поведению Split(String, Int32), создавая разбиения по одному в рамках итерации результирующего перечислителя, а не всех одновременно в составе одного массива. Однако есть несколько заметных различий. Split(String, Int32) будет включать содержимое групп записи в результирующий раздел, в то время как EnumerateSplits(ReadOnlySpan<Char>, Int32) не будет. И если RightToLeft задано, Split(String, Int32) изменит порядок результирующего раскола слева направо, в то время как EnumerateSplits(ReadOnlySpan<Char>, Int32) даст расколы в порядке их обнаружения справа налево.

Каждое совпадение на самом деле не произойдет, пока MoveNext() не будет вызван на перечислитель, при этом выполняется одно совпадение для каждого вызова MoveNext(). Так как оценка совпадения выполняется лениво, любые изменения переданных входных данных между вызовами MoveNext() могут повлиять на результаты сопоставления; такие изменения следует избегать и не поддерживать.

Применяется к

.NET 10 и .NET 9
Продукт Версии
.NET 9, 10

EnumerateSplits(ReadOnlySpan<Char>, String)

Исходный код:
Regex.EnumerateSplits.cs
Исходный код:
Regex.EnumerateSplits.cs

Выполняет поиск входного диапазона для всех вхождений регулярного выражения и возвращает Regex.ValueSplitEnumerator для итерации по разбиениям вокруг совпадений.

public static System.Text.RegularExpressions.Regex.ValueSplitEnumerator EnumerateSplits(ReadOnlySpan<char> input, string pattern);

Параметры

input
ReadOnlySpan<Char>

Диапазон для поиска совпадения.

pattern
String

Шаблон регулярного выражения, соответствующий.

Возвращаемое значение

Regex.ValueSplitEnumerator, чтобы итерировать по разбиениям вокруг совпадений.

Исключения

pattern null.

Произошла ошибка синтаксического анализа регулярных выражений.

Комментарии

Поведение EnumerateSplits(ReadOnlySpan<Char>, String) аналогично поведению Split(String, String), создавая разбиения по одному в рамках итерации результирующего перечислителя, а не всех одновременно в составе одного массива. Однако есть несколько заметных различий. Split(String, String) будет включать содержимое групп записи в результирующий раздел, в то время как EnumerateSplits(ReadOnlySpan<Char>, String) не будет. И если RightToLeft задано, Split(String, String) изменит порядок результирующего раскола слева направо, в то время как EnumerateSplits(ReadOnlySpan<Char>, String) даст расколы в порядке их обнаружения справа налево.

Каждое совпадение на самом деле не произойдет, пока MoveNext() не будет вызван на перечислитель, при этом выполняется одно совпадение для каждого вызова MoveNext(). Так как оценка совпадения выполняется лениво, любые изменения переданных входных данных между вызовами MoveNext() могут повлиять на результаты сопоставления; такие изменения следует избегать и не поддерживать.

Применяется к

.NET 10 и .NET 9
Продукт Версии
.NET 9, 10

EnumerateSplits(ReadOnlySpan<Char>, Int32, Int32)

Исходный код:
Regex.EnumerateSplits.cs
Исходный код:
Regex.EnumerateSplits.cs

Выполняет поиск входного диапазона для всех вхождений регулярного выражения и возвращает Regex.ValueSplitEnumerator для итерации по разбиениям вокруг совпадений.

public System.Text.RegularExpressions.Regex.ValueSplitEnumerator EnumerateSplits(ReadOnlySpan<char> input, int count, int startat);

Параметры

input
ReadOnlySpan<Char>

Диапазон для поиска совпадения.

count
Int32

Максимальное количество раз, когда может произойти разделение. Если значение 0, все разбиения доступны.

startat
Int32

Отсчитываемая от нуля позиция символа, с которой следует запустить поиск.

Возвращаемое значение

Regex.ValueSplitEnumerator, чтобы выполнить итерацию по совпадениям.

Комментарии

Поведение EnumerateSplits(ReadOnlySpan<Char>, Int32, Int32) аналогично поведению Split(String, Int32, Int32), создавая разбиения по одному в рамках итерации результирующего перечислителя, а не всех одновременно в составе одного массива. Однако есть несколько заметных различий. Split(String, Int32, Int32) будет включать содержимое групп записи в результирующий раздел, в то время как EnumerateSplits(ReadOnlySpan<Char>, Int32, Int32) не будет. И если RightToLeft задано, Split(String, Int32, Int32) изменит порядок результирующего раскола слева направо, в то время как EnumerateSplits(ReadOnlySpan<Char>, Int32, Int32) даст расколы в порядке их обнаружения справа налево.

Каждое совпадение на самом деле не произойдет, пока MoveNext() не будет вызван на перечислитель, при этом выполняется одно совпадение для каждого вызова MoveNext(). Так как оценка совпадения выполняется лениво, любые изменения переданных входных данных между вызовами MoveNext() могут повлиять на результаты сопоставления; такие изменения следует избегать и не поддерживать.

Применяется к

.NET 10 и .NET 9
Продукт Версии
.NET 9, 10

EnumerateSplits(ReadOnlySpan<Char>, String, RegexOptions)

Исходный код:
Regex.EnumerateSplits.cs
Исходный код:
Regex.EnumerateSplits.cs

Выполняет поиск входного диапазона для всех вхождений регулярного выражения и возвращает Regex.ValueSplitEnumerator для итерации по разбиениям вокруг совпадений.

public static System.Text.RegularExpressions.Regex.ValueSplitEnumerator EnumerateSplits(ReadOnlySpan<char> input, string pattern, System.Text.RegularExpressions.RegexOptions options);

Параметры

input
ReadOnlySpan<Char>

Диапазон для поиска совпадения.

pattern
String

Шаблон регулярного выражения, соответствующий.

options
RegexOptions

Побитовое сочетание значений перечисления, указывающее параметры сопоставления.

Возвращаемое значение

Regex.ValueSplitEnumerator, чтобы итерировать по разбиениям вокруг совпадений.

Исключения

pattern null.

options не является допустимым битовым сочетанием значений RegexOptions.

Произошла ошибка синтаксического анализа регулярных выражений.

Комментарии

Поведение EnumerateSplits(ReadOnlySpan<Char>, String, RegexOptions) аналогично поведению Split(String, String, RegexOptions), создавая разбиения по одному в рамках итерации результирующего перечислителя, а не всех одновременно в составе одного массива. Однако есть несколько заметных различий. Split(String, String, RegexOptions) будет включать содержимое групп записи в результирующий раздел, в то время как EnumerateSplits(ReadOnlySpan<Char>, String, RegexOptions) не будет. И если RightToLeft задано, Split(String, String, RegexOptions) изменит порядок результирующего раскола слева направо, в то время как EnumerateSplits(ReadOnlySpan<Char>, String, RegexOptions) даст расколы в порядке их обнаружения справа налево.

Каждое совпадение на самом деле не произойдет, пока MoveNext() не будет вызван на перечислитель, при этом выполняется одно совпадение для каждого вызова MoveNext(). Так как оценка совпадения выполняется лениво, любые изменения переданных входных данных между вызовами MoveNext() могут повлиять на результаты сопоставления; такие изменения следует избегать и не поддерживать.

Применяется к

.NET 10 и .NET 9
Продукт Версии
.NET 9, 10

EnumerateSplits(ReadOnlySpan<Char>, String, RegexOptions, TimeSpan)

Исходный код:
Regex.EnumerateSplits.cs
Исходный код:
Regex.EnumerateSplits.cs

Выполняет поиск входного диапазона для всех вхождений регулярного выражения и возвращает Regex.ValueSplitEnumerator для итерации по разбиениям вокруг совпадений.

public static System.Text.RegularExpressions.Regex.ValueSplitEnumerator EnumerateSplits(ReadOnlySpan<char> input, string pattern, System.Text.RegularExpressions.RegexOptions options, TimeSpan matchTimeout);

Параметры

input
ReadOnlySpan<Char>

Диапазон для поиска совпадения.

pattern
String

Шаблон регулярного выражения, соответствующий.

options
RegexOptions

Побитовое сочетание значений перечисления, указывающее параметры сопоставления.

matchTimeout
TimeSpan

Интервал времени ожидания или InfiniteMatchTimeout, чтобы указать, что метод не должен истекать.

Возвращаемое значение

Regex.ValueSplitEnumerator, чтобы итерировать по разбиениям вокруг совпадений.

Исключения

pattern null.

options не является допустимым побитовым сочетанием значений RegexOptions или matchTimeout отрицательно, ноль или больше приблизительно 24 дней.

Произошла ошибка синтаксического анализа регулярных выражений.

Комментарии

Поведение EnumerateSplits(ReadOnlySpan<Char>, String, RegexOptions, TimeSpan) аналогично поведению Split(String, String, RegexOptions, TimeSpan), создавая разбиения по одному в рамках итерации результирующего перечислителя, а не всех одновременно в составе одного массива. Однако есть несколько заметных различий. Split(String, String, RegexOptions, TimeSpan) будет включать содержимое групп записи в результирующий раздел, в то время как EnumerateSplits(ReadOnlySpan<Char>, String, RegexOptions, TimeSpan) не будет. И если RightToLeft задано, Split(String, String, RegexOptions, TimeSpan) изменит порядок результирующего раскола слева направо, в то время как EnumerateSplits(ReadOnlySpan<Char>, String, RegexOptions, TimeSpan) даст расколы в порядке их обнаружения справа налево.

Каждое совпадение на самом деле не произойдет, пока MoveNext() не будет вызван на перечислитель, при этом выполняется одно совпадение для каждого вызова MoveNext(). Так как оценка совпадения выполняется лениво, любые изменения переданных входных данных между вызовами MoveNext() могут повлиять на результаты сопоставления; такие изменения следует избегать и не поддерживать.

Применяется к

.NET 10 и .NET 9
Продукт Версии
.NET 9, 10