Подтвердить что ты не робот

Как удалить первый и последний символ строки?

Я работал в SOAP-сообщении, чтобы получить LoginToken из Webservice и сохранить LoginToken в String и использовать System.out.println(LoginToken); для печати. Это печатает [wdsd34svdf], но я хочу только wdsd34svdf, так, как удалить квадратную скобку. пожалуйста, помогите мне.

Спасибо

Пример:

String LoginToken=getName().toString();
System.out.println("LoginToken" + LoginToken);

Выход: [wdsd34svdf] Я хочу wdsd34svdf

4b9b3361

Ответ 1

Это легко, Вам нужно найти индекс [и], затем подстроку. (Здесь [всегда в начале и] находится в конце),

String loginToken="[wdsd34svdf]";
System.out.println(loginToken.substring(1, loginToken.length()-1));

Ответ 2

Вы всегда можете использовать substring:

String loginToken = getName().toString();
loginToken = loginToken.substring(1, loginToken.length() - 1);

Ответ 3

Это общее решение:

str.replaceAll("^.|.$", "")

Ответ 4

Другим решением этой проблемы является использование метода commons-lang (начиная с версии 2.0) StringUtils.substringBetween(String str, String open, String close). Главным преимуществом является то, что он имеет нулевую безопасную работу.

StringUtils.substringBetween("[wdsd34svdf]", "[", "]"); // returns wdsd34svdf

Ответ 5

У меня был похожий сценарий, и я подумал, что что-то вроде

str.replaceAll("\[|\]", "");

выглядел чище. Конечно, если ваш токен может иметь в нем скобки, это не сработает.

Ответ 6

Таким образом вы можете удалить 1 ведущий символ "[" и 1 trailing "]". Если ваша строка не начинается с "[" или заканчивается символом "]", она ничего не удалит:

str.replaceAll("^\\[|\\]$", "")