我有:
String ex = "INSERT INTO `countries` VALUES (1, 'Afghanistan')";如何使用java删除除‘’中的内容以外的所有内容?引号内的内容是可变的。
发布于 2012-04-19 03:36:41
您可以使用substring、indexOf和lastIndexOf方法从String中提取各个部分。你可能只需要遍历几次,以防在文本中找到超过一对的引号。但是,如果它只有一个,您可以使用以下代码:
ex.substring(ex.indexOf("'"), ex.lastIndexOf("'"));这些将包括引号。如果你不想要引号,你可以这样做:
ex.substring(ex.indexOf("'") + 1, ex.lastIndexOf("'") - 1);发布于 2012-04-19 03:50:45
使用正则表达式..
Matcher match = Pattern.compile("'.*'").matcher("INSERT INTO `countries` VALUES (1, 'Afghanistan')");
if (match.find()) {
System.out.println(match.group());
}如果有多个被引用的单词,你可以使用for..。
发布于 2012-04-19 03:36:32
看一下正则表达式http://en.wikipedia.org/wiki/Regular_expression,就像下面这样...
pattern = "(?i)'(.+?)'";
String updated = EXAMPLE_TEST.replaceAll(pattern, "$2");https://stackoverflow.com/questions/10216585
复制相似问题