Разделение строк по пробелам, сохранение подстрок в кавычках в Java
Разбиение строк в Java — универсальный инструмент, но при его использовании могут возникнуть проблемы цитируемые подстроки. Чтобы эффективно разбить строку на основе пробелов, рассматривая подстроки в кавычках как одно слово, рассмотрите следующий метод:
Используя регулярные выражения, решение использует определенный шаблон, который идентифицирует токены как последовательности не заключенных в кавычки символы пробелов или последовательности в кавычках, содержащие любое количество символов. Результатом является список токенизированных элементов, которые точно сохраняют подстроки в кавычках.
Pattern pattern = Pattern.compile("([^\"]\\S*|\". ?\")\\s*"); Matcher matcher = pattern.matcher(str); Listtokens = new ArrayList(); while (matcher.find()) { String token = matcher.group(1); tokens.add(token.replace("\"", "")); // Remove surrounding quotes if needed }
В этом примере строка «Местоположение \"Добро пожаловать в Индию\" Бангалор Чаннай \"ИТ-город\" Майсур" будет маркирована как:
Location Welcome to india Bangalore Channai IT city Mysore
Этот метод элегантно обеспечивает сохранение подстрок в кавычках, гарантируя, что значимые фразы, такие как «Добро пожаловать в Индию» или «ИТ-город», сохраняются как отдельные токены.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3