0

我有:

String ex = "INSERT INTO `countries` VALUES (1, 'Afghanistan')";

java - 我怎样才能删除除“”中的内容之外的所有内容?引号内的内容是可变的。

4

4 回答 4

1

用正则表达式..

Matcher match = Pattern.compile("'.*'").matcher("INSERT INTO `countries` VALUES (1, 'Afghanistan')");
if (match.find()) {
    System.out.println(match.group());
}

如果有多个引用的单词,您可以使用 for...

于 2012-04-18T19:50:45.167 回答
0

看看正则表达式http://en.wikipedia.org/wiki/Regular_expression 类似这样的...

pattern = "(?i)'(.+?)'";
String updated = EXAMPLE_TEST.replaceAll(pattern, "$2");
于 2012-04-18T19:36:32.317 回答
0

String您可以使用substringindexOflastIndexOf方法从 中取出碎片和部分。如果在文本中找到超过 1 对引号,您可能只需要循环几次。但是,如果它只是一个,你可以使用这个:

ex.substring(ex.indexOf("'"), ex.lastIndexOf("'"));

这些将包括引号。如果你不想要引号,你会这样做:

ex.substring(ex.indexOf("'") + 1, ex.lastIndexOf("'") - 1);
于 2012-04-18T19:36:41.350 回答
0

你可以通过 " using String.split(") 将它拆分成一个数组,那么数组的偶数索引就是你想要的字符串

于 2012-04-18T19:38:49.803 回答