Digamos que tengo estas dos cadenas: "5/15/1983" y "1983.05.15". Suponga que todos los caracteres en la cadena serán numéricos, excepto un carácter "separador" que puede aparecer en cualquier parte de la cadena. Solo habrá un carácter separador; todas las instancias de cualquier carácter no numérico dado en la cadena serán idénticas.JavaScript regex: encuentre el carácter no numérico
¿Cómo puedo usar la expresión regular para extraer este carácter? ¿Hay una manera más eficiente que la siguiente?
"05-15-1983".replace(/\d/g, "")[0];
Gracias!
Así que si sólo estamos buscando el carácter, utilizando el código de arriba, debería ser: "15-05-1983" .match (/ \ D /) [0] [0] ¿entonces? ¿Es esto mejor que mi ejemplo? ¿Por qué? – JamesBrownIsDead
@James, como ya he dicho, lo anterior es una matriz, pero implícitamente convertible, por lo que probablemente no necesite el '[0]'. Además, '" 15-05-1983 ".match (/ \ D /) [0]' y '" 15-05-1983 ".match (/ \ D /) [0] [0]' son * exactamente * equivalente. No hay ningún tipo de caracteres, por lo que indexar devuelve una cadena. De hecho, puede agregar tantos '[0]' como desee. Creo que esta respuesta es mejor, ya que su ejemplo obliga al evaluador a mirar cada letra y hacer una concatenación (trivial). Mi respuesta se detendrá después de encontrar el primer no dígito. –