2016-05-17 16 views
0

Ich habe die folgende Zeichenfolge:Suchen und Ersetzen von Klammern in einem String

"Learning (Java) to create app on (Android)" 

Ich mag es ändern:

"Learning <strong>Java</strong> to create app on <strong>Android</strong>" 

Das bedeutet, dass die Klammern mit starken Tags ersetzen, um es fett . Wie kann ich das mit Java machen?

+0

dieses ref versuchen: http://stackoverflow.com/questions/14584018/how-can-i- get-inside-clarests-value-in-a-string –

+2

'str.replace (" ("," ") .replace (") "," ")' Setzt voraus, dass die Klammern richtig ausbalanciert sind. – Thilo

+1

@DaminiMehra Diese Frage bezieht sich auf das Abrufen der Zeichenfolge in Klammern. In dieser Frage geht es darum, Klammern durch HTML-Tags zu ersetzen. –

Antwort

1

Der Vorschlag der anderen Antwort, String#replace zu verwenden, würde den Trick machen, wenn Sie nur einen Satz Klammern hätten. Ihr Beispiel enthält jedoch mehr als einen Satz Klammern. Sie möchten also String#replaceAll verwenden.

Zum Beispiel:

String foo = "Learning (Java) to create app on (Android)"; 
foo = foo.replaceAll("(", "<strong>"); 
foo = foo.replaceAll(")", "</strong>"); 
+0

Ich versuche zu bauen, aber Fehler wie unten erfassen https://gyazo.com/aff5ebb2a62ab0a0d28b24ccd258192b – user3328309

+0

@ user3328309 Mein Code fehlte ein Semikolon (';') am Ende der letzten Zeile, aber ich meine Antwort bearbeitet und korrigiert . Fügen Sie einfach ein Semikolon hinzu und das sollte es beheben. –

+0

Dank Sir, ich fand das Ergebnis, wie ich mit der Unterstützung von @Sanjeev – user3328309

4

Sie können es auf diese Weise tun, wie gut

String test = "Learning (Java) to create app on (Android)"; 

System.out.println(test.replaceAll("\\((\\w*)\\)","<b>$1</b>")); 
+0

das funktioniert perfekt, danke kerl :) – user3328309

+0

Froh, dass dir geholfen .. Prost – Sanjeev