2015-05-07 5 views
5

Ich habe eine Zeichenfolge wie folgt -löschen

['name' {d763e18f-1719-480b-bcd6-8fea7bad894e} Parameter, 'class' {8471633e-4a54-4c86-bd2b-56d58baf2fbb} Parameter, 'id' {23471633e-4a54-4c86-bd2b-56d58baf2fbb} Parameter] 

Und ich möchte das folgende Ergebnis -

['name' , 'class' , 'id'] 

Alle Inhalte zwischen den Wort in Anführungszeichen '' und , sollte gelöscht werden.

Wie erreiche ich das? Danke!

Antwort

2

können Sie die folgenden Befehle verwenden entsprechen:

('\w+'\s*).*?(?=[,\]]) 

und ersetzen mit $1

Regex in Java ('\\w+'\\s*).*?(?=[,\\]])

sehen würde DEMO

0

versuchen, diese

Matcher m = Pattern.compile("'.+?'").matcher(str); 
StringBuilder sb = new StringBuilder(); 
while(m.find()) { 
    if (sb.length() > 0) { 
     sb.append(','); 
    } 
    sb.append(m.group()); 
} 
String res = sb.toString(); 
1

Sie können diese Regex verwenden.

('\w+'\s*).*?(?=[,\]])