validar validacion telefono regulares numeros numero nombre formularios formulario expresiones especiales ejemplos contraseƱa con caracteres javascript whitespace

validacion - validar nombre javascript



Verificar si una cadena tiene espacio en blanco (4)

Aquí está mi validación sugerida:

var isValid = false; // Check whether this entered value is numeric. function checkNumeric() { var numericVal = document.getElementById("txt_numeric").value; if(isNaN(numericVal) || numericVal == "" || numericVal == null || numericVal.indexOf('' '') >= 0) { alert("Please, enter a numeric value!"); isValid = false; } else { isValid = true; } }

Estoy tratando de verificar si una cadena tiene espacio en blanco . Encontré esta función pero parece que no funciona:

function hasWhiteSpace(s) { var reWhiteSpace = new RegExp("/^/s+$/"); // Check for white space if (reWhiteSpace.test(s)) { //alert("Please Check Your Fields For Spaces"); return false; } return true; }

Por cierto, agregué comillas a RegExp .

¿Hay algo mal? ¿Hay algo mejor que pueda usar? Espero que JQuery.


Esta función busca otros tipos de espacio en blanco, no solo espacio (pestaña, retorno de carro, etc.)

import some from ''lodash/fp/some'' const whitespaceCharacters = ['' '', '' '', ''/b'', ''/t'', ''/n'', ''/v'', ''/f'', ''/r'', `/"`, `/'`, `//`, ''/u0008'', ''/u0009'', ''/u000A'', ''/u000B'', ''/u000C'', ''/u000D'', ''/u0020'',''/u0022'', ''/u0027'', ''/u005C'', ''/u00A0'', ''/u2028'', ''/u2029'', ''/uFEFF''] const hasWhitespace = char => some( w => char.indexOf(w) > -1, whitespaceCharacters ) console.log(hasWhitespace(''a'')); // a, false console.log(hasWhitespace('' '')); // space, true console.log(hasWhitespace('' '')); // tab, true console.log(hasWhitespace(''/r'')); // carriage return, true

Si no quieres usar Lodash , entonces aquí hay una implementación simple con 2 s :

const ssome = (predicate, list) => { const len = list.length; for(const i = 0; i<len; i++) { if(predicate(list[i]) === true) { return true; } } return false; };

Entonces simplemente reemplaza some con ssome .

const hasWhitespace = char => some( w => char.indexOf(w) > -1, whitespaceCharacters )

Para aquellos en Node, usa:

const { some } = require(''lodash/fp'');


Simplemente puede usar el método indexOf en la cadena de entrada:

function hasWhiteSpace(s) { return s.indexOf('' '') >= 0; }

O puede usar el método de prueba en un simple RegEx:

function hasWhiteSpace(s) { return //s/g.test(s); }

Esto también buscará otros caracteres de espacio en blanco como Tab.


Su expresión regular no coincidirá con nada, tal como es. Definitivamente debe eliminar las comillas, los caracteres "/" son suficientes.

/^/s+$/ está comprobando si la cadena es TODOS los espacios en blanco:

  • ^ coincide con el inicio de la cadena.
  • /s+ significa al menos 1, posiblemente más, espacios.
  • $ coincide con el final de la cadena.

Intente reemplazar la expresión regular con //s/ (y sin comillas)