java - 如何从字符串中提取以下模式?

标签 java regex string pattern-matching matcher

我有一个如下所示的字符串。

{(firstName1,lastName1,College1,{(24,25)},{(Street,23)},City1,Country1)}

我需要从上面提取详细信息/值并将它们添加到列表中。我所说的细节是指:

 ["firstName1","lastName1","College1","24","25","Street","23","City1", "country1"]

我怎样才能实现上述目标?我尝试了以下方法,但不确定如何将所有花括号和方括号放入模式中。

private static String flattenPigBag(String pigdata) {
    String s = "";
    Pattern p = Pattern.compile("\\{(.*)}");
    Matcher m = p.matcher(pigdata);
    while (m.find()) {
        s = m.group(1);
        System.out.println("answer : " + s);
    }
    return s;
}

最佳答案

试试这个:

String[] parts = str.replaceAll("}|\\{", "").split(",");

关于java - 如何从字符串中提取以下模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41156304/

相关文章:

java - 如何从Java Spark中的collect_list创建的列中获取第一个和最后一个元素

java - 在没有运行定位器的情况下启动 spring-data-gemfire

regex - Powershell正则表达式:读取两点之间的多行字符串

objective-c - NSRegularExpression 从 numberOfRanges 方法给出了错误的结果

java - JAVA中如何将以空格分隔的整数字符串转换为数组

javascript - 字符串替换搜索和替换。如何进行搜索命中的子字符串

java - Camera2 API 使预览填充整个 View

java - 计算 vector int[]中 "0"位置之间的 "1"位置总数

ios - 使用字符定界符在 Swift 中查找和突出显示文本

Python : sorting a list of strings, 全部大写在先