Capitalizar un texto en JavaScript

Esta función extiende la clase string de JavaScript añadiendole un método que nos permite poner la primera letra en Mayúscula.

String.prototype.capitalize = function() {
    return this.toLowerCase().replace(/(^|\s)([a-z])/g, function(m, p1, p2) { return p1 + p2.toUpperCase(); });
};

10 comentarios en “Capitalizar un texto en JavaScript

  1. Buenas Oscar.
    Muchas gracias por el aporte. Me gustaría ir más allá no se si puedes ayudarme.

    Querría hacer lo mismo, pero sólo capitlizar la primera letra de cada párrafo y las que van después de punto.

    Muchas gracias y un saludo!

    • Pues así en 2 minutillos….. prueba esto:

      String.prototype.trim = function () {
      return this.replace(/^\s+/, »).replace(/\s+$/, »);
      };

      String.prototype.capitalizeParagraph = function() {
      var res = «»;
      var paragraphs = this.split(«.»);
      for(var i = 0; i < paragraphs.length ; i++) {
      var temp = paragraphs[i].trim();
      res += "." + temp.charAt(0).toUpperCase() + temp.slice(1).toLowerCase();
      }
      return res.slice(1);
      };

  2. Muchisimas gracias! Me ha sido muy útil.
    Una pregunta que me viene a la mente, ¿se podría insertar en un text area para controlor lo que escribe la gente en un formulario html?

    Mil gracias de nuevo crack

  3. Excelente…solamente me gustaria poder despues de capitalizar cada palabra poder obtener las mayusculas de toda la frase…es decir algo asi

    «hola mundo»
    «Hola Mundo»
    «HM»

    • Hola Danilo. Puedes hacer algo asi:

      var res = «»;
      var text = “Hola Mundo”;
      var words = text.split(» «);
      for(var i = 0 ; i < words.length ; i++) { res += words[i][0].toUppercase(); }

  4. Oscar, como seria en una caja de texto (input) que solo permita la primera letra en mayúscula y el resto en minúscula de cada cadena de texto (capitalize) en JavaScript aun teniendo la tecla mayus activada. Sin que se vea el efecto de transformación al escribir.

Responder a DANILO ELISEO LOPEZ BARRIOS Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.