-8

所以我有格式的数据

['first data','second data', 'third data']

我需要在单引号中提取每个数据:

first data  
second data  
third data  

我试过这样做:

Pattern p = Pattern.compile("(?:^|\\s)'([^']*?)'(?:$|\\s)", Pattern.MULTILINE);  
Matcher m = p.matcher(data);  

但它没有用。它说它找不到匹配项。

4

2 回答 2

2

尝试使用包中的PatternMatcherjava.util.regex。像这样的东西:

String data = "['first data','second data', 'third data']";
Pattern pattern = Pattern.compile("'(.*?)'");

Matcher matcher = pattern.matcher(data);

while (matcher.find()) {
    System.out.println(matcher.group(1));
}

输出:

first data
second data
third data
于 2013-08-08T18:19:52.793 回答
0

试试这个

   String values = "['first data','second data', 'third data']";
   String[] valuesArray = values.replaceAll("\\[|\\]|\\'","").split("\\,");
   for(String text:valuesArray)
        System.out.println(text);
于 2013-08-08T18:29:10.300 回答