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

152
Views
Método Javascript para poner en mayúscula la primera letra de cada palabra y también cada palabra después de un guión o una raya

Necesito un método de JavaScript que me permita convertir la primera letra de cada palabra en una cadena en una letra mayúscula como esta: mike tyson wayne a Mike Tyson Wayne . El método también debería poder convertir la primera palabra después de un guión a una letra mayúscula como esta: mike-tyson wayne a Mike Tyson Wayne . El método también debería poder convertir palabras en mayúsculas para poner en mayúsculas palabras como esta: MIKE-TYSON WAYNE a Mike Tyson Wayne .

He probado este método usando expresiones regulares obtenidas de otro hilo:

 text.replace(/(^\w{1})|(\s{1}\w{1})/g, match => match.toUpperCase())
  • (^\w{1}): coincide con el primer carácter de la cadena
  • |: o
  • (\s{1}\w{1}): coincide con un carácter que vino después de un espacio
  • g: emparejar todo
  • match => match.toUpperCase(): reemplazar con puede tomar la función, entonces; reemplazar coincidencia con coincidencia en mayúsculas

Funcionó para convertir la primera letra de una cadena en mayúscula y también funciona para la primera letra de una cadena después del espacio.

Agregué esta expresión que se suponía que debía incluir la primera letra de una cadena después del espacio a la expresión. La expresión es (?:- |\d\. ).*

Combinado con la primera expresión, se convirtió en:

 text.replace(/(^\w{1})|(\s{1}\w{1})|(?:- |\d\. ).*/g, match => match.toUpperCase());

El problema es que el método anterior no funciona para las cadenas después del guión, pero aún funciona para las cadenas después del espacio.

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

0

  • \d es un dígito, por lo que su expresión coincide con un - o un dígito seguido de . ...
  • {1} significa una ocurrencia, que es el valor predeterminado de todos modos...

Prueba algo como esto:

 /(^\w)|([-\s]\w)/g
about 4 years ago · Juan Pablo Isaza Report

0

Una expresión regular como ... /(?<=\b)\w/g o /(?<=\b)\p{L}/gu ... que usan una mirada positiva hacia atrás para los límites de las palabras, pero la segunda variante hacer uso de escapes de propiedades Unicode podría ser un enfoque más genérico pero viable ...

 console.log( "mike-tyson wayne" .replace((/(?<=\b)\w/g), match => match.toUpperCase()) ); console.log( "MIKE-TYSON WAYNE" .toLowerCase() .replace((/(?<=\b)\p{L}/gu), match => match.toUpperCase()) );
 .as-console-wrapper { min-height: 100%!important; top: 0; }

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!