Использование Escape-последовательности для разделения строк Java по буквальной точке
При попытке разделить строку Java по буквальной точке ("".") используя метод Split(), важно экранировать точку, используя escape-последовательность "\". Это действие необходимо, поскольку метод Split() рассматривает неэкранированную точку как регулярное выражение, соответствующее любому символу, что может привести к неожиданным результатам.
Например, рассмотрим следующий код:
String filename = "D:/some folder/001.docx"; String extensionRemoved = filename.split(".")[0];
Этот код генерирует исключение ArrayIndexOutOfBoundsException, поскольку входная строка представляет собой всего лишь одну точку. Разделение точки на точку приводит к созданию пустого массива, а поскольку метод Split() удаляет из результата конечные пустые строки, возвращается пустой массив.
Чтобы решить эту проблему, точку необходимо экранировать как следует:
String extensionRemoved = filename.split("\\.")[0];
Используя escape-последовательность "\", мы указываем, что мы хотим разделить буквальный символ точки, а не какой-либо символ.
Важно отметить, что двойная обратная косая черта необходима для создания одинарной обратной косой черты в регулярном выражении, поскольку одиночная обратная косая черта рассматривается как escape-символ в Строковые литералы Java.
Следуя этому подходу, вы можете эффективно разбивать строки Java по буквальной точке, предотвращая исключения ArrayIndexOutOfBoundsException и обеспечение точных результатов.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3