2012-05-22 21 views

Respuesta

20

uso esto: [^x0-9]

Usted puede comprobarlo en http://gskinner.com/RegExr/

+0

Olvidé especificar el capital x también, ¿estaría bien [^ xX0-9]? Gracias Nurlan. –

0

lo he descubierto, tal vez hay una mejor manera de hacerlo sin embargo.

number.replaceAll("[^\\d+xX]", ""); 
+0

debería leer "[^ \\ d + xX]" con la barra doble. –

+1

@George - ¿Por qué usar el signo más? ¿No sería eso lo que salteará las cosas más? – jahroy

0

Usted debe usar esta:

number.replaceAll("[\\D&&[^x]]", "") 
7

Su expresión regular es

number.replaceAll("[^\\dxX]+", ""); 

No hay necesidad de escapar caracteres normales dentro de una clase de caracteres. Una mejora es también tener el cuantificador + después de la clase de caracteres, de esa manera las secuencias de esos caracteres se reemplazan a la vez y no cada carácter por sí mismo.

leer algunos conceptos básicos de expresiones regulares en Xisb: What absolutely every Programmer should know about regular expressions

Cuestiones relacionadas