2017-03-10 11 views
1

かっこでテキストを削除するにはどうすればよいですか?私はこれを行うとJava replaceAll(..)と正規表現

String string = "product(version(id),code),user(uid)"; 
string = string.replaceAll("\\(.*\\)", ""); 
System.out.println("string= " + string); 

、私が取得:

string= product 

しかし、私は

string= product,user 

敬具を取得したいと思います!

+2

より適切なデュープで再閉じました。また、デモを参照してください - https://ideone.com/Hq8BeZ –

答えて

1

はこれを試してみてください:

String string = "(product(version(id),code),use)r(uid)"; 
StringBuilder sb = new StringBuilder(); 
    int countOpenPar = 0; 
    for (int i=0; i<string.length(); i++) { 
     char c = string.charAt(i); 

     if(c == '('){ 
     countOpenPar++; 
     }else if(c == ')'){ 
     countOpenPar-- ; 
     }else if(countOpenPar == 0){ 
     sb.append(c); 
     } 
    } 
    System.out.println("string= " + sb.toString());