注册 登录
编程论坛 JAVA论坛

分割文本?

鸭子乖乖的 发布于 2020-08-01 20:59, 1429 次点击

String str = "{123:{Pox:466.25142847587307d,Poz:648.8300852981306d,Poy:4.0d,},str啊这:{Pox:472.70879534906925d,Poz:633.1415990048729d,Poy:4.0d,},1234:{Pox:472.70879534906925d,Poz:633.1415990048729d,Poy:4.0d,},啊这:{Pox:460.73324381977204d,Poz:628.3121038235982d,Poy:4.0d,},这:{Pox:477.42045188559365d,Poz:633.8240211895339d,Poy:4.0d,},hello:{Pox:466.25142847587307d,Poz:648.8300852981306d,Poy:4.0d,},123_1:{Pox:476.87948827209357d,Poz:632.9039626739195d,Poy:4.0d,},啊这00:{Pox:460.73324381977204d,Poz:628.3121038235982d,Poy:4.0d,},}";

我想获取开头的那个字符串,咋办。。
输出结果:      获取xxx字符串 {xxx:{},xxx:{}.....}  
    123
    str啊这
    1234
    ......
    啊这00         

[此贴子已经被作者于2020-8-1 21:04编辑过]

2 回复
#2
apull2020-08-02 10:36
用String的split方法,大概思路如下:

程序代码:

public class HelloWorld {
    public static void main(String []args) {
        String str = "{123:{Pox:466.25142847587307d,Poz:648.8300852981306d,Poy:4.0d,},str啊这:{Pox:472.70879534906925d,Poz:633.1415990048729d,Poy:4.0d,},1234:{Pox:472.70879534906925d,Poz:633.1415990048729d,Poy:4.0d,},啊这:{Pox:460.73324381977204d,Poz:628.3121038235982d,Poy:4.0d,},这:{Pox:477.42045188559365d,Poz:633.8240211895339d,Poy:4.0d,},hello:{Pox:466.25142847587307d,Poz:648.8300852981306d,Poy:4.0d,},123_1:{Pox:476.87948827209357d,Poz:632.9039626739195d,Poy:4.0d,},啊这00:{Pox:460.73324381977204d,Poz:628.3121038235982d,Poy:4.0d,},}";
        String[] str1 = str.split("},");
        String[] str2;
        for(int i=0;i<str1.length;i++){
            str2 = str1[i].split("\\:\\{");
            System.out.println(str2[0]);            
        }        
    }
}

结果:
{123
str啊这
1234
啊这

hello
123_1
啊这00
}

#3
鸭子乖乖的2020-08-03 18:51
回复 2楼 apull
谢谢啦!
1