javascript - regulares - Expresión regular: cualquier carácter que NO sea una letra o número
expresiones regulares javascript caracteres especiales (8)
Estoy tratando de descubrir la expresión regular que coincidirá con cualquier personaje que no sea una letra o un número. Así que personajes como (,, @, £, () etc ...
Una vez encontrado, quiero reemplazarlo con un espacio en blanco.
Algún consejo.
¿Has probado str = str.replace(//W|_/g,'''');
devolverá una cadena sin ningún carácter y puede especificar si hay algún carácter especial después de la barra de tubería |
para atraparlos también.
var str = "1324567890abc§$)% John Doe #$@''.replace(//W|_/g, '''');
devolverá str = 1324567890abcJohnDoe
o busque dígitos y letras y reemplácelos por cadena vacía (""):
var str = "1324567890abc§$)% John Doe #$@".replace(//w|_/g, '''');
devolverá str = ''§$)% #$@'';
Estás buscando:
var yourVar = ''1324567890abc§$)%'';
yourVar = yourVar.replace(/[^a-zA-Z0-9]/g, '' '');
Esto reemplaza todos los caracteres no alfanuméricos con un espacio.
La "g" en el extremo reemplaza todas las ocurrencias.
En lugar de especificar az (minúscula) y AZ (mayúscula) también puede usar la opción sensible a mayúsculas y minúsculas: /[^a-z0-9]/gi
.
Esta expresión regular no coincide con las letras, los dígitos y los caracteres de subrayado.
/W
Por ejemplo en javascript:
"(,,@,£,() asdf 345345".replace(//W/g, '' '');
Esto es demasiado tarde, pero como no hay una respuesta aceptada, me gustaría proporcionar lo que creo que es el más simple: / D - coincide con todos los caracteres que no sean dígitos.
var x = "123 235-25%";
x.replace(//D/g, '''');
Resultados en x: "12323525"
Consulte https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions
Para hacer coincidir cualquier cosa que no sea letra o número, puede probar esto:
[^a-zA-Z0-9]
Y para reemplazar:
var str = ''dfj,dsf7lfsd .sdklfj'';
str = str.replace(/[^A-Za-z0-9]/g, '' '');
Para hacer coincidir cualquier cosa que no sea una letra, un número o una letra con signos diacríticos como é
puedes probar esto:
[^/wÀ-úÀ-ÿ]
Y para reemplazar:
var str = ''dfj,dsf7é@lfsd .sdklfàj1'';
str = str.replace(/[^/wÀ-úÀ-ÿ]/g, ''_'');
Inspirado por la publicación superior con soporte para signos diacríticos
source
Solo para que otros lo vean:
someString.replaceAll("([^//p{L}//p{N}])", " ");
eliminará cualquier carácter Unicode sin letras y sin números.
intente hacer str.replace (/ [^ / w] /); Reemplazará todos los no alfabetos y números de su cadena!
Editar 1: str.replace(/[^/w]/g, '' '')