2012-01-06 22 views
9

Quiero eliminar cualquier cosa entre < y > incluyendo (< y >) desde mi cadena con expresión regular. Aquí hay algunos ejemplos.Expresión regular para eliminar una subcadena entre dos caracteres

Hi<friends>and<family> debe dar Hiand

<Rekha Verma>[email protected] entonces debería dar [email protected]

Reva Patel debe dar Reva Patel

<Reva Patel>[email protected],<rekha Verma>[email protected] debe dar [email protected],[email protected]

Puede alguien por favor, dame una expresión regular ¿para esto? Necesito implementarlo en Java.

Respuesta

16

Trate de usar la expresión regular:

<.*?> 

Por ejemplo:

String s = "Hi<friends>and<family>"; 
System.out.println(s.replaceAll("<.*?>", "")); 
+0

Gracias por la respuesta rápida ... Funciona .. – Ragini

+0

@RaginiPatel, usted debe [aceptar la respuesta] (http://meta.stackexchange.com/a/5235) con los que está contento, y más votos que cualquier otro piensa que eres bueno/te ayudó. – Qtax

4
String newStr = str.replaceAll("<[^>]*>", ""); 
+0

-1 Esto no funcionará. ¿Por qué tienes el primero y el último/en tu expresión regular? – dogbane

+0

@dogbane: Lo siento, reacción por trabajar con PHP. Fijo. –

0

Dar a este segmento de código de un intento!

String str = "Hi<family>and</family>test";  

for (int i = 0; i < str.split("</?[a-z]+>").length; i++) 
    System.out.println(str.split("</?[a-z]+>")[i]); 
Cuestiones relacionadas