НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
1018 of 1310 menu

Метод parseCaseInsensitive

Метод parseCaseInsensitive класса DateTimeFormatterBuilder включает режим парсинга без учета регистра символов для создаваемого форматтера. Это позволяет парсить строковые представления дат и времени, игнорируя различия в верхнем и нижнем регистре.

Импорт

import java.time.format.DateTimeFormatterBuilder

Синтаксис

fun parseCaseInsensitive(): DateTimeFormatterBuilder

Пример

Создадим форматтер для парсинга месяцев без учета регистра:

val builder = DateTimeFormatterBuilder() builder.parseCaseInsensitive() builder.appendPattern("MMM yyyy") val formatter = builder.toFormatter() val dateStr = "jAn 2025" val date = java.time.YearMonth.parse(dateStr, formatter) println(date)

Результат выполнения кода:

String "2025-01"

Пример

Парсинг названий дней недели в разных регистрах:

val builder = DateTimeFormatterBuilder() builder.parseCaseInsensitive() builder.appendPattern("EEE, dd MMM yyyy") val formatter = builder.toFormatter() val dateStr = "mOn, 15 Jul 2025" val date = java.time.LocalDate.parse(dateStr, formatter) println(date)

Результат выполнения кода:

String "2025-07-15"

Пример

Сравнение парсинга с учетом и без учета регистра:

val caseSensitiveFormatter = DateTimeFormatterBuilder() .appendPattern("MMM yyyy") .toFormatter() val caseInsensitiveFormatter = DateTimeFormatterBuilder() .parseCaseInsensitive() .appendPattern("MMM yyyy") .toFormatter() val dateStr = "JAN 2025" try { val date1 = java.time.YearMonth.parse(dateStr.toLowerCase(), caseSensitiveFormatter) println("Case sensitive: $date1") } catch (e: Exception) { println("Case sensitive failed: ${e.message}") } val date2 = java.time.YearMonth.parse(dateStr, caseInsensitiveFormatter) println("Case insensitive: $date2")

Результат выполнения кода:

String "Case sensitive failed: Text 'jan 2025' could not be parsed at index 0" String "Case insensitive: 2025-01"

Смотрите также

  • метод parseCaseSensitive класса DateTimeFormatterBuilder,
    который включает режим парсинга с учетом регистра
  • метод appendPattern класса DateTimeFormatterBuilder,
    который добавляет шаблон для форматирования
  • метод toFormatter класса DateTimeFormatterBuilder,
    который создает форматтер из билдера
  • класс DateTimeFormatter,
    который используется для форматирования и парсинга дат
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить