Si tengo una cadena como "algo12" o "algo102", ¿cómo usaría una expresión regular en javascript para devolver solo el número de partes?Regex usando javascript para devolver solo números
Respuesta
expresiones regulares:
var numberPattern = /\d+/g;
'something102asdfkj1948948'.match(numberPattern)
devolvería un objeto con dos elementos en el interior, '102' y '1948948'. Opere como lo desee. Si no coincide, devolverá nulo.
Suponiendo que no se trata de decimales complejos, esto debería ser suficiente, supongo.
Supongo que quiere obtener el número (s) de la cadena. En cuyo caso, puede utilizar el siguiente:
// Returns an array of numbers located in the string
function get_numbers(input) {
return input.match(/[0-9]+/g);
}
var first_test = get_numbers('something102');
var second_test = get_numbers('something102or12');
var third_test = get_numbers('no numbers here!');
alert(first_test); // [102]
alert(second_test); // [102,12]
alert(third_test); // null
Para dejarlo en claro, 'get_numbers/1' devuelve una matriz de cuerda, no número. Para su ejemplo, sería volver: * '[ "102"]' * '[ "102", "12"]' * nula – sntran
También podría despojar a todos los caracteres no numéricos (\D
o [^0-9]
):
'abc123cdef4567hij89'.replace(/\D/g, '');
// returns '123456789'
Las respuestas dadas en realidad no coincida con su pregunta , lo que implicó un detrás del número. Además, recuerda que estás recuperando una cadena; si realmente necesita un número, emitir el resultado:
item=item.replace('^.*\D(\d*)$', '$1');
if (!/^\d+$/.test(item)) throw 'parse error: number not found';
item=Number(item);
Si usted está tratando con los identificadores numéricos de elementos en una página web, su código podría también útilmente aceptar una Element
, extrayendo el número de su id
(o su primer padre con un id
); Si tiene un Event
a mano, también puede obtener el Element
de eso también.
var result = input.match(/\d+/g).join([])
si desea que sólo dígitos:
var value = '675-805-714';
var numberPattern = /\d+/g;
value = value.match(numberPattern).join([]);
alert(value);
//Show: 675805714
ya que usted consigue los dígitos unieron
Por número con fracción decimal y el signo menos, yo uso este fragmento:
var NUMERIC_REGEXP = /[-]{0,1}[\d]*[\.]{0,1}[\d]+/g;
'2.2px 3.1px 4px -7.6px obj.key'.match(NUMERIC_REGEXP)
// return ["2.2", "3.1", "4", "-7.6"]
Actualización:
Encontré una herramienta que le permite editar visualmente la expresión regular: JavaScript Regular Expression Parser & Visualizer.
Actualización:
Aquí hay otro con el que incluso se puede depurador expresión regular: Online regex tester and debugger.
Actualización:
Otra: Regexpal.
perfecta, única solución que trabaja con decimales y nums negativos – ArmaGeddON
, gracias, @ ArmaGeddon, espero que pueda ayudar a más personas. –
parece que esto coincidirá con cosas como 0.0.0 también. Intenta mover el. fuera del paréntesis como este [-] {0,1} [\ d] * [\.] {0,1} [\ d] + – Makolyte
- 1. Regex solo para números
- 2. Regex para validar solo números naturales?
- 3. Regex para validar solo números y puntos
- 4. Regex solo números y punto o coma
- 5. regex permitir solo números o cadena vacía
- 6. RegEx para Javascript para permitir solo caracteres alfanuméricos
- 7. Javascript regex cuelga (usando v8)
- 8. javascript regex: solo letras inglesas permitidas
- 9. Devolver solo el tiempo Fecha irrelevante javascript
- 10. Regex para eliminar letras, símbolos excepto números
- 11. Javascript regex para aceptar solo letras, espacios, y ñ
- 12. Patrón Regex para devolver texto entre paréntesis
- 13. Descripción para devolver solo ClassName?
- 14. C# Regex para números y guiones solamente
- 15. Regex para números en notación científica?
- 16. Regex para validar alfabéticos y números en la cadena localizada
- 17. Python Regex para analizar Cadena y devolver Tuple
- 18. números no permitidos (0-9) - Expresión Regex en javascript
- 19. Javascript regex, reemplace todos los caracteres que no sean números
- 20. Javascript no se dividirá usando regex
- 21. Regex para validar cadenas que tienen solo caracteres (no caracteres especiales), espacios en blanco y números
- 22. Eliminación de números de una cadena usando Javascript
- 23. Múltiples sustituciones de números en cadena usando regex python
- 24. ¿Generar números de página usando javascript/jquery?
- 25. Javascript regex y parseInt
- 26. Números y espacios - Regex de teléfono suelto
- 27. Javascript/Regex para encontrar solo el nombre de dominio raíz sin subdominios
- 28. RegEx para la validación de JavaScript de los números separados por comas
- 29. Regex para permitir números y un solo guión en el medio
- 30. Python regex para entero?
err. odio ser quisquilloso, pero esto devuelve una matriz, no un objeto (al menos en cromo). – Maus
Todas las matrices son objetos, ¿no? –
¿qué tal 'parseInt (cadena);' –