Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

159
Views
obtener números de fecha de cadena

digamos que tengo dos cadenas que se ven así:

  1. Lunes, 13 de noviembre de 2008 - 15:12
  2. viernes, 1 de noviembre de 2008 - 18:53

¿Hay un patrón Regex que pueda usar para extraer el número de día?

Actualmente estoy usando Javascript y me gustaría crear una función para hacer el trabajo pesado. He comenzado con uno a continuación, pero parece que no puedo hacerlo funcionar.

 function extractDate(str) { return str; }

Por favor, comparte conmigo una manera de hacer que funcione.

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Aquí hay una función Regex que eliminará el día de la semana y la hora en los elementos:

 /(january|february|march|april|june|july|august|september|october|november|december) \d{1,2}, \d{4}/gi

Aquí hay un ejemplo de trabajo de esa expresión regular, luego regístrela.

 const x = document.getElementById("target").children; const dateRegex = (/(january|february|march|april|june|july|august|september|october|november|december) \d{1,2}, \d{4}/gi); function extractDate(str) { const parsedDate = str.match(dateRegex); return parsedDate; } for (let i = 0; i < x.length; i++) { // Return as string var strDate = extractDate(x[i].innerText).toString(); // Return as array var arrDate = extractDate(x[i].innerText); console.log(strDate); }
 <ul id="target"> <li> Friday, January 1, 2008 - 6:53pm </li> <li> Monday, November 13, 2008 - 3:12pm </li> <li> Friday, November 1, 2008 - 6:53pm </li> </ul>

about 4 years ago · Juan Pablo Isaza Report

0

Usa momentjs es una solución:

 const test1 = 'Thursday, November 13, 2008 - 3:12pm' // 11/13/2008 is not Monday const test2 = 'Saturday, November 1, 2008 - 6:53pm' // 11/01/2008 is not Friday const moment1 = moment(test1, 'dddd, MMMM D, YYYY - h:mma') const moment2 = moment(test2, 'dddd, MMMM D, YYYY - h:mma') console.log(moment1.format('dddd, MMMM D, YYYY - h:mma'), moment1.toDate().getTime()) console.log(moment2.format('dddd, MMMM D, YYYY - h:mma'), moment2.toDate().getTime()) const invalid = 'Monday, November 13, 2008 - 3:12pm' console.log('Invalid Date String', moment(invalid, 'dddd, MMMM D, YYYY - h:mma'))
 <script src="https://unpkg.com/moment@2.29.1/moment.js"></script>

about 4 years ago · Juan Pablo Isaza Report

0

Puede obtener fácilmente todos los datos como

 function getDate(str) { const [, day, month, date, year] = str.match(/(\w+), (\w+) (\d+), (\d+)/); return { day, month, date, year }; } console.log(getDate("Monday, November 13, 2008 - 3:12pm")); console.log(getDate("Friday, November 1, 2008 - 6:53pm"));
 /* This is not a part of answer. It is just to give the output full height. So IGNORE IT */ .as-console-wrapper { max-height: 100% !important; top: 0; }

Si desea obtener particularmente la fecha 13 o 1 , puede hacerlo como

 function getDate(str) { const [, day, month, date, year] = str.match(/(\w+), (\w+) (\d+), (\d+)/); return { day, month, date, year }; } const date = getDate("Monday, November 13, 2008 - 3:12pm"); console.log(+date.date); // or // console.log(parseInt(date.date));

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!