Java - как выполнить поиск в массиве строк, чтобы удалить все кавычки?

Скажем, например, у меня есть массив из 5 элементов, каждый из которых является строкой. Однако одна из строк заключена в кавычки, которые я хотел бы удалить автоматически. Есть ли функция, позволяющая легко это сделать?

* убрать кавычки, т.е. Не вся строка из массива


person Java Confused    schedule 22.04.2012    source источник
comment
Есть ли в какой-либо строке встроенные символы?   -  person Andrew Thompson    schedule 22.04.2012


Ответы (3)


Удалите все кавычки из строки:

String input = "foo \"bar\" baz";
String output = input.replace("\"", "");

http://ideone.com/RFZZq

person Matt Ball    schedule 22.04.2012

Поскольку String будет в массиве, вам придется перебрать весь массив и для каждого элемента проверить, были ли найдены кавычки. Если они были обнаружены, они будут удалены с помощью метода String's replace. Пример ниже:

String[] myArray = {"This", "may", "have", "a", "\"Quotation\"", "In", "It"};
for (int i = 0; i < myArray.length; i++) {
  if (myArray[i].contains("\"")) {
      myArray[i] = myArray[i].replace("\"", "");
  }
}
person Anthony S.    schedule 22.04.2012
comment
Почему здесь String#replaceAll() (который обрабатывает первый параметр как регулярное выражение), а не String#replace()? - person Matt Ball; 22.04.2012
comment
Спасибо за вопрос, я немного исследовал API Java и обнаружил, что replaceAll лучше всего использовать для замены, связанной с регулярным выражением, когда replace используется только для упрощенной замены строк. - person Anthony S.; 22.04.2012

Вышеупомянутые способы хороши, но вы также можете сделать это с помощью этого кода

      String s1 = "bhb/vgvg/vvv";
      String fr[] = s1.split("/");

      for (String string : fr) 
      {
        System.out.print(string);
      }

Он также удалит все кавычки из строки

person love with java    schedule 22.04.2012