Я хочу найти позицию in(
в строке, но я не могу явно написать:
int index = valueOf("in(");
, потому что я получаю ошибку non closed group ( java.util.regex.PatternSyntaxException Unclosed group).
Если я выйду из скобок, он не найдет индекс in(
, но in\(
int index = value.indexOf("in\\(");
Как мне этого добиться?
РЕДАКТИРОВАТЬ: Я действительно допустил ошибку при формулировании вопроса.В моем коде я использую indexOf, но настоящей проблемой был String.split.Но когда я получил PatternSyntaxException, я каким-то образом перешел к строке, где находился indexOf, поэтому я начал исправлять проблему в неправильном месте.Когда я сбежал (тогда indexOf не обнаружил "\ (".
Что я запутался и почувствовал, что потеря позиции - это то, что сделал затмение, тогда я публикую пост Стекпоток, что я делаю:
String value = "in(test";
String[] arr = value.split("in\\(");
поэтому у меня есть arr = {"", "test"}, как показано ниже:
но почему? Почему я вижу значение:
Почему в элементах массива строковое значение отображается как исходная строка? Это ошибка или особенность?