Я хочу разделить строку символом '='. Но я хочу, чтобы он разбивался только по первому экземпляру. Как я могу это сделать ? Вот пример JavaScript для символа '_', но он не работает для меня. Разделить строку только на первый экземпляр указанного символа
Пример :
apple=fruit table price=5
Когда я пробую String.split ('='); это дает
[apple],[fruit table price],[5]
Но мне нужно
[apple],[fruit table price=5]
Благодарность
=
.Ответы:
string.split("=", 2);
Как
String.split(java.lang.String regex, int limit)
объясняет:источник
Да, вы можете, просто передайте целочисленный параметр методу разделения
String stSplit = "apple=fruit table price=5" stSplit.split("=", 2);
Вот ссылка на java-документ: String # split (java.lang.String, int)
источник
Как многие другие ответы предлагают предельный подход, это может быть другой способ
Вы можете использовать метод indexOf для String, который вернет первое появление данного символа. Используя этот индекс, вы можете получить желаемый результат
String target = "apple=fruit table price=5" ; int x= target.indexOf("="); System.out.println(target.substring(x+1));
источник
String string = "This is test string on web"; String splitData[] = string.split("\\s", 2); Result :: splitData[0] => This splitData[1] => is test string String string = "This is test string on web"; String splitData[] = string.split("\\s", 3); Result :: splitData[0] => This splitData[1] => is splitData[1] => test string on web
По умолчанию метод split создает n массивов на основе заданного регулярного выражения. Но если вы хотите ограничить количество массивов, создаваемых после разделения, передайте второй аргумент как целочисленный аргумент.
источник
Это работает:
public class Split { public static void main(String...args) { String a = "%abcdef&Ghijk%xyz"; String b[] = a.split("%", 2); System.out.println("Value = "+b[1]); } }
источник
String[] func(String apple){ String[] tmp = new String[2]; for(int i=0;i<apple.length;i++){ if(apple.charAt(i)=='='){ tmp[0]=apple.substring(0,i); tmp[1]=apple.substring(i+1,apple.length); break; } } return tmp; } //returns string_ARRAY_!
люблю писать собственные методы :)
источник