Автор оригинала: Pankaj Kumar.
Метод Java String split() используется для разделения строки на массив строк на основе предоставленного регулярного выражения.
Разделение строк Java
Иногда нам приходится разбивать строку на Java, например, разбивать данные CSV-файла, чтобы получить все разные значения.
Класс String предоставляет два полезных метода для разделения строки в java.
публичная строка[] разделение(регулярное выражение строки)
: Этот метод разделения строк java используется для разделения строки на основе заданной строки регулярного выражения. Вся строка разделяется и возвращается в виде массива строк. Этот метод был представлен в Java 1.4. Обратите внимание, что конечные пустые строки не включены в возвращаемый массив строк. Давайте рассмотрим простой пример разделения строк java, чтобы понять это.Приведенный выше код будет выдавать вывод в виде
[, b c, , d]
. Обратите внимание, что последняя пустая строка исключена из возвращаемого массива строк.публичная строка[] разделение(регулярное выражение строки, ограничение int)
: Этот метод разделения строк java используется, когда мы хотим, чтобы строка была разделена на ограниченное количество строк. Например, предположим, что у нас есть строковая переменная, содержащая имя и адрес с запятой в качестве разделителя. Теперь в адресе могут быть запятые, поэтому мы можем использовать этот метод. Краткий пример такого разделения строк приведен ниже.
Обратите внимание, что первый метод выше фактически использует второй метод, передавая limit как 0.
Важные моменты разделения строк Java
Некоторые важные моменты, касающиеся метода разделения строк java, заключаются в следующем:
- Массив, возвращаемый этим методом, содержит каждую подстроку этой строки, которая заканчивается другой подстрокой, соответствующей данному выражению, или заканчивается концом строки. Подстроки в массиве расположены в том порядке, в котором они встречаются в этой строке.
- Если регулярное выражение не соответствует какой-либо части входной строки, то результирующий массив содержит только один элемент, а именно эту строку.
- Параметр limit определяет количество раз, когда применяется шаблон, и, следовательно, влияет на длину результирующего массива. Если предел n больше нуля, то шаблон будет применен не более n – 1 раз, длина массива будет не больше n, а последняя запись массива будет содержать все входные данные за пределами последнего совпадающего разделителя.
Если n не является положительным, то шаблон будет применен как можно больше раз, и массив может иметь любую длину.
Если n равно нулю, то шаблон будет применен как можно больше раз, массив может иметь любую длину, а завершающие пустые строки будут отброшены.
Пример разделения строк Java
Вот пример метода разделения строк java.
package com.journaldev.util; import java.util.Arrays; public class JavaStringSplit { /** * Java String split example * * @param args */ public static void main(String[] args) { String line = "I am a java developer"; String[] words = line.split(" "); String[] twoWords = line.split(" ", 2); System.out.println("String split with delimiter: " + Arrays.toString(words)); System.out.println("String split into two: " + Arrays.toString(twoWords)); // split string delimited with special characters String wordsWithNumbers = "I|am|a|java|developer"; String[] numbers = wordsWithNumbers.split("\\|"); System.out.println("String split with special character: " + Arrays.toString(numbers)); } }
На рисунке ниже показан результат, полученный с помощью приведенного выше примера программы разделения строк.
Мы можем использовать обратную косую черту для использования специальных символов регулярного выражения java в качестве обычных символов, как я использовал специальный символ трубы (|) в приведенной выше программе.
Это все для краткого обзора примера разделения строк java.
Ссылка: API Doc