Matcher.ReplaceAll Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
ReplaceAll(IFunction) |
Заменяет каждую подсезону входной последовательности, которая соответствует шаблону результатом применения данной функции замены к результату сопоставления этого компейтера, соответствующего этому подсеку. |
ReplaceAll(String) |
Заменяет каждую подсезону входной последовательности, которая соответствует шаблону заданной строкой замены. |
ReplaceAll(IFunction)
Заменяет каждую подсезону входной последовательности, которая соответствует шаблону результатом применения данной функции замены к результату сопоставления этого компейтера, соответствующего этому подсеку.
[Android.Runtime.Register("replaceAll", "(Ljava/util/function/Function;)Ljava/lang/String;", "", ApiSince=34)]
public string ReplaceAll (Java.Util.Functions.IFunction replacer);
[<Android.Runtime.Register("replaceAll", "(Ljava/util/function/Function;)Ljava/lang/String;", "", ApiSince=34)>]
member this.ReplaceAll : Java.Util.Functions.IFunction -> string
Параметры
- replacer
- IFunction
Функция, применяемая к результату сопоставления этого компатера, возвращающего строку замены.
Возвращаемое значение
Строка, созданная путем замены каждого соответствующего подсечета результатом применения функции замены к соответствующей подсеку, подстановки захваченных вложенных параметров по мере необходимости.
- Атрибуты
Комментарии
Заменяет каждую подсезону входной последовательности, которая соответствует шаблону результатом применения данной функции замены к результату сопоставления этого компейтера, соответствующего этому подсеку. Исключения, создаваемые функцией, передаются вызывающей функции.
Этот метод сначала сбрасывает этот компанер. Затем он сканирует входную последовательность поиска совпадений шаблона. Символы, которые не являются частью какого-либо совпадения, добавляются непосредственно к результирующей строке; каждое совпадение заменяется в результате применением функции замены, возвращающей строку замены. Каждая строка замены может содержать ссылки на захваченные вложенные последовательности, как в методе #appendReplacement appendReplacement
.
Обратите внимание, что знаки обратной косой очки (\
) и знаки доллара ($
) в строке замены могут привести к тому, что результаты могут отличаться от того, если бы оно рассматривалось как литеральная строка замены. Знаки доллара могут рассматриваться как ссылки на захваченные подсезоны, как описано выше, и обратные косые знаки используются для экранирования литеральных символов в строке замены.
Учитывая регулярное выражение dog
, входные "zzzdogzzzdogzzz"
данные и функцию mr -> mr.group().toUpperCase()
, вызов этого метода для сопоставления для этого выражения приведет к получению строки "zzzDOGzzzDOGzzz"
.
Вызов этого метода изменяет состояние этого компатера. Если компанер должен использоваться в дальнейших операциях сопоставления, сначала его следует сбросить.
Функция замены не должна изменять состояние этого компатера во время замены. Этот метод, на основе лучших усилий, создает исключение java.util.ConcurrentModificationException
при обнаружении такого изменения.
Состояние каждого результата сопоставления, переданного функции замены, гарантированно будет константой только в течение длительного вызова функции замены и только в том случае, если функция заменителя не изменяет состояние этого компатера.
Добавлено в 9.
Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.
Применяется к
ReplaceAll(String)
Заменяет каждую подсезону входной последовательности, которая соответствует шаблону заданной строкой замены.
[Android.Runtime.Register("replaceAll", "(Ljava/lang/String;)Ljava/lang/String;", "")]
public string ReplaceAll (string replacement);
[<Android.Runtime.Register("replaceAll", "(Ljava/lang/String;)Ljava/lang/String;", "")>]
member this.ReplaceAll : string -> string
Параметры
- replacement
- String
Строка для замены
Возвращаемое значение
Строка, созданная путем замены каждого соответствующего подсечета строкой замены, подстановки захваченных вложенных параметров по мере необходимости
- Атрибуты
Комментарии
Заменяет каждую подсезону входной последовательности, которая соответствует шаблону заданной строкой замены.
Этот метод сначала сбрасывает этот компанер. Затем он сканирует входную последовательность поиска совпадений шаблона. Символы, которые не являются частью какого-либо совпадения, добавляются непосредственно к результирующей строке; каждое совпадение заменяется в результате строкой замены. Строка замены может содержать ссылки на захваченные вложенные последовательности, как в методе #appendReplacement appendReplacement
.
Обратите внимание, что знаки обратной косой очки (\
) и знаки доллара ($
) в строке замены могут привести к тому, что результаты могут отличаться от того, если бы оно рассматривалось как литеральная строка замены. Знаки доллара могут рассматриваться как ссылки на захваченные подсезоны, как описано выше, и обратные косые знаки используются для экранирования литеральных символов в строке замены.
Учитывая регулярное выражение a*b
, входные "aabfooaabfooabfoob"
данные и строку "-"
замены, вызов этого метода для сопоставления для этого выражения даст строку "-foo-foo-foo-"
.
Вызов этого метода изменяет состояние этого компатера. Если компанер должен использоваться в дальнейших операциях сопоставления, сначала его следует сбросить.
Документация по Java для java.util.regex.Matcher.replaceAll(java.lang.String)
.
Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.