Я пытаюсь написать простую программу, которая принимает два пользовательских ввода: String, подлежащие разделению, и строку, которая указывает один или несколько разделителей. Программа должна печатать массив строк, состоящий из разломов подстрок и разделителей. Я должен реализовать публичный статический Струнный раскол [] (Строка с, Строка регулярных выражений)Java-массивы - split() с заданными пользователем разделителями
Если строка будет разделить это
cd#34#abef#1256
Мой текущий код правильно выводит
[cd, 34, abef, 1256]
Что мне нужно выводимый
[cd, #, 34, abef, #, 1256]
А что если строка будет разделить два указанных пользователем разделители
cd?34?abef#1256
Как я могу разделить, что так выглядит
[cd, ?, 34, ?, abef, #, 1256]
Ни один из предыдущих вопросов, я заглянула в используемых пользователем указанных строк и разделителей.
Вот мой текущий код:
import java.util.Arrays;
import java.util.Scanner;
public class StringSplit
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
System.out.print("Enter a string: ");
String str = scan.next();
System.out.print("Specify delimiter(s): ");
String del = scan.next();
String[] result = split(str, del);
System.out.print(Arrays.toString(result));
}
public static String[] split(String s, String regex)
{
String[] myString = s.split(regex);
return myString;
}
}
Я не думаю, что это какой-то стандартный способ libray для этого. Вы собираетесь реализовать свой собственный путь. –
http://stackoverflow.com/questions/2206378/how-to-split-a-string-but-also-keep-the-delimiters – kan
@kan, я рассмотрел этот вопрос, и это решение для строк и разделителей, которые не принимаются как пользовательский ввод. –