Necesito encontrar un registro que solo permita caracteres alfanuméricos. Hasta ahora, todos los que intento solo funcionan si la cadena es alfanumérica, lo que significa que contiene una letra y un número. Solo quiero uno que permita cualquiera y no requiera ambos.RegEx para Javascript para permitir solo caracteres alfanuméricos
Respuesta
/^[a-z0-9]+$/i
^ Start of string
[a-z0-9] a or b or c or ... z or 0 or 1 or ... 9
+ one or more times (change to * to allow empty string)
$ end of string
/i case-insensitive
^\s*([0-9a-zA-Z]*)\s*$
o, si se quiere un mínimo de un personaje:
^\s*([0-9a-zA-Z]+)\s*$
corchetes indican un conjunto de caracteres.^es el inicio de la entrada. $ es el final de la entrada (o nueva línea, dependiendo de sus opciones). \ s es el espacio en blanco.
El espacio en blanco anterior y posterior es opcional.
Los paréntesis son el operador de agrupación que le permite extraer la información que desea.
EDITAR: eliminé el uso erróneo del juego de caracteres \ w.
Usa la palabra clase de caracteres. El siguiente es equivalente a un ^[a-zA-Z0-9_]+$
:
^\w+$
Explicación:
- ^inicio de la cadena de
- \ w palabra de caracteres (A-Z, a-z, 0-9, _).
- $ final de la cadena
Uso /[^\w]|_/g
si no desea hacer coincidir el subrayado.
\ w es en realidad equivalente a [a-zA-Z_0-9] por lo que su RegEx también coincide con los subrayados [_]. –
casi alfanumérico no es alfanumérico en absoluto, pero gracias su ans me ayudó mucho – ajax333221
Cierto, no es una respuesta estricta a la Q como se publicó, sino exactamente lo que estaba buscando .. – prototype
Si quieres devolver un resultado reemplazado, entonces esto funcionaría:
var a = 'Test123*** TEST';
var b = a.replace(/[^a-z0-9]/gi,'');
console.log(b);
Esto volvería:
Test123TEST
Tenga en cuenta que el gi es necesaria porque no mundial (significa sólo en la primera coincidencia), y no distingue entre mayúsculas y minúsculas, por lo que tengo az en lugar de a-zA-Z. Y el^dentro de los paréntesis significa "cualquier cosa que no esté entre paréntesis".
ADVERTENCIA: Alphanumeric es genial si eso es exactamente lo que desea. Pero si está utilizando esto en un mercado internacional como el nombre o el área geográfica de una persona, entonces debe contar los caracteres Unicode, lo que no hará. Por ejemplo, si tiene un nombre como "Âlvarö", lo convertiría en "lvar".
gracias por reemplazar al hombre clave, ¡estoy tan confundido como el infierno! – iamserious
muy bien hecho. –
Esta es una gran respuesta con la explicación. Recuerde permitir espacios si los necesita. .replace (/ [^ a-z0-9 \]/gi, '') –
/^([a-zA-Z0-9 _-]+)$/
la expresión regular anterior permite espacios en una cadena lateral y restringir characters.It especial sólo permite a-z, A-Z, 0-9, espacio, guión y guión.
Muchachos increíbles. lo amo tanto :) –
Incluso mejor que Gayan Dissanayake
señalado.
/^[-\w\s]+$/
Ahora ^[a-zA-Z0-9]+$
se puede representar como ^\w+$
Es posible que desee utilizar \ s en lugar de espacio. Tenga en cuenta que \ s se ocupa de espacios en blanco y no solo de un carácter de espacio.
En lugar de buscar una cadena alfanumérica válida, puede lograr esto indirectamente marcando la cadena en busca de caracteres no válidos. Hágalo marcando cualquier cosa que coincida con el complemento de la cadena alfanumérica válida.
/[^a-z\d]/i
Aquí se muestra un ejemplo:
Aviso la lógica no operador en isValid
, ya que estoy probando si la cadena es falso, no si es válido.
Extender el prototipo cadena que se utiliza en todo el proyecto
String.prototype.alphaNumeric = function() {
return this.replace(/[^a-z0-9]/gi,'');
}
Uso:
"I don't know what to say?".alphaNumeric();
//Idontknowwhattosay
Esto funcionará
^(?=.*[a-zA-Z])(?=.*[0-9])[a-zA-Z0-9]+$
Se acepta solamente alphanumeriuc personajes solos:
de prueba casos pas ed:
dGgs1s23 - valid
12fUgdf - valid,
121232 - invalid,
abchfe - invalid,
abd()* - invalid,
42232^5$ - invalid
o
También puede probar esto. esta expresión satisfecha, al menos, un número y un carácter y no hay otros caracteres especiales
^(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]+)$
en angular puede probar como:
$scope.str = '12fUgdf';
var pattern = new RegExp('^(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]+)$');
$scope.testResult = pattern.test($scope.str);
Se parece que muchos usuarios se han dado cuenta de que estas expresiones regulares se almo st ciertamente falla a menos que trabajemos estrictamente en inglés. Pero creo que hay un camino fácil que no sería tan limitado.
- hacer una copia de su cadena en mayúsculas
- hacer una segunda copia en todas las minúsculas
Los caracteres que coincidan en esas cadenas definitivamente no son alfabéticos en la naturaleza.
let copy1 = originalString.toUpperCase();
let copy2 = originalString.toLowerCase();
for(let i=0; i<originalString.length; i++) {
let bIsAlphabetic = (copy1[i] != copy2[i]);
}
Opcionalmente, también se puede detectar numéricos con sólo mirar para los dígitos 0 a 9.
Prueba esto ... que reemplazar Identificación campo con #nombre ... az (A a Z), AZ (a a Z), 0-9 (0 a 9)
jQuery(document).ready(function($){
$('#name').keypress(function (e) {
var regex = new RegExp("^[a-zA-Z0-9\s]+$");
var str = String.fromCharCode(!e.charCode ? e.which : e.charCode);
if (regex.test(str)) {
return true;
}
e.preventDefault();
return false;
});
});
- 1. Permitir solo caracteres alfanuméricos para un UITextField
- 2. C# Regex para permitir solo el alfanumérico
- 3. Regex para permitir solo caracteres alfanuméricos, coma, guión, guión bajo y punto y coma
- 4. Permitir solo caracteres alfanuméricos en el cuadro de texto
- 5. Cómo restringir TextView para permitir sólo caracteres alfanuméricos en Android
- 6. Regex para eliminar caracteres no alfanuméricos de cadenas UTF8
- 7. Expresión regular para permitir caracteres alfanuméricos, solo un espacio y luego alpahnumeric
- 8. ¿Cómo crear una expresión regular para aceptar solo caracteres alfanuméricos?
- 9. javascript regex para contar caracteres en blanco
- 10. Javascript regex para caracteres alfabéticos y espacios?
- 11. Regex permitir dígitos y un solo punto
- 12. Regex usando javascript para devolver solo números
- 13. JavaScript blancos regex caracteres
- 14. Cómo permitir solo caracteres numéricos alfa con JavaScript
- 15. Regex solo para números
- 16. regex permitir solo números o cadena vacía
- 17. Javascript regex para validar nombres de archivo
- 18. Regex para nombres con caracteres especiales (Unicode)
- 19. caracteres cheque alfanuméricos en cadena en C#
- 20. Regex para que coincida con los espacios alfanuméricos
- 21. Regex para obtener texto ENTRE dos caracteres
- 22. JavaScript regex para cadena alfanumérica con longitud de 3-5 caracteres
- 23. javascript regex: solo letras inglesas permitidas
- 24. Javascript regex para aceptar solo letras, espacios, y ñ
- 25. Cómo comprobar los caracteres alfanuméricos
- 26. Google usando caracteres no alfanuméricos
- 27. Regex para todos los caracteres de IMPRESIÓN
- 28. Regex para validar solo números naturales?
- 29. Regex solo permite letras y algunos caracteres
- 30. javascript regex para validar texto alfanumérico con espacios y rechazar caracteres especiales
Y eso es la magia allí mismo! – User
[a-z] no coincide con caracteres internacionales. –
Wow - No creo haber entendido completamente Regex hasta que se descompuso de esta manera simple. ¡Gracias! –