This will be done:
String[] terms = str.replaceAll("^.*?\"|\"[^\"]*$", "").split("\"\\s+\"");
This works by first removing the first and last quotes and all the characters between them and the ends (via a call replaceAll(), and then splitting it into quote-whitespace-quote, leaving you only with the content you use.
Some test codes:
String str = "[\"first\" \"second\" \"third\"] ";
String[] terms = str.replaceAll("^.*?\"|\"[^\"]*$", "").split("\"\\s+\"");
System.out.println(Arrays.toString(terms));
Output:
[first, second, third]