2016-04-07 6 views
-2

Я пытаюсь разделить большую строку, используя двойные кавычки «\» «в качестве разделителя. По какой-то причине метод split не может найти вхождения двойных кавычек в моей строке . Код:двойные кавычки и метод разделения

public void stripToDialog() 
    { 
     String[] parsedContent = content.split("\"");//content has a very large String stored in it. 

     for(String e: parsedContent)//When I print each element out, I only get the original String stored in content. 
      System.out.println(e); 
    } 

Так что происходит Каким образом метода разделения не может показаться, чтобы обнаружить двойные кавычки

примера для моих желаемых результатов для фиктивной строки «\» хаста ла? vista baby \ "- Arnold S." будет представлять собой массив строк, который выглядит так: {"", "hasta la vista baby", "Arnold S."}

В случае, если это имеет значение, я читаю исходную строку из файла txt с помощью объекта FileReader.

+3

Дать полный минимальный пример воспроизведения проблемы. Шахта не работает: https://gist.github.com/jnizet/ac5e53d5971a4af436494b5cc52586d5. Я предполагаю, что ваша строка не содержит двойных кавычек, но «умные», «кудрявые» двойные кавычки, так как многие текстовые процессоры включают при вводе двойной кавычки. –

+0

Работает только для меня ... –

+1

"" "Эти 3 символа не являются одинаковыми символами, Возможно, у вас есть один из них в вашем содержании –

ответ

0

Я согласен с другими плакатами, ваши цитаты, вероятно, представляют собой причудливые котировки Unicode.

Я думаю, что одно исправление может состоять в том, чтобы взять вашу строку ввода и заменить все «причудливые» кавычки на обычные.

content.replaceAll("\\u0093", "\""); 
content.replaceAll("\\u0094", "\""); 

Вы можете посмотреть на этой странице, чтобы посмотреть, что другие цитаты, возможно, придется обращаться: https://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html

Смежные вопросы