Vou usar expressão regular com javascript, para mostrar como cortar uma string nos “N” primeiros caracteres.

Eu poderia usar a função .substr(), mas ai não teria graça.. hehe

Fiz aqui rapidinho uma brincadeira para cortar uma frase nos primeiros 9 caracteres.

Fazendo a string:

<h1 id="title">Um titulo bem grande cheio de palavras esquisitas</h1>

Ser mostrada apenas como:

<h1 id="title">Um titulo...</h1>

E ao clicar, mostra a frase completa. Alternando cada clique, mostrando truncado e mostrando completo.

<html>
<head>
  <meta charset="utf8" />

  <script type="text/javascript">
  function id( el ){
    return document.getElementById( el );
  }
  String.prototype.truncate = function( max ){
    var er = new RegExp( "(^[\\w\\s]{"+max+"})(.*)$" );
    return this.replace( er,'$1' );
  }
  window.onload = function(){
    var $t = id('title');
    var strtitle = $t.innerHTML;

    $t.title = strtitle;
    $t.innerHTML = strtitle.truncate( 9 )+'...';

    $t.onclick = function(){
      this.innerHTML = this.innerHTML.length==12 ? this.title : this.title.truncate( 9 )+'...';

    }
  }
  </script>
  <style type="text/css">
  #title { cursor: pointer; }
  </style>
</head>
<body>
  <h1 id="title">Um titulo bem grande cheio de palavras esquisitas</h1>

</body>
</html>

Note que fiz 2 grupos na expressão regular. O primeiro grupo casa os “N” primeiros caracteres(letras simbolos e espaços \w\s), e o segundo grupo casa tudo oque vier depois(.*), em qualquer quantidade.

O replace troca tudo, pelo o que foi casado no primeiro grupo.

Dessa forma consigo o “efeito” de cortar depois dos “N” primeiros caracteres.

Caso tudo e coloco de novo os “N” primeiros.

Este post, é o primeiro exemplo prático do Expressões Regulares – REGEX para iniciantes.

O método substr()

Fiz com ReGex, o mesmo que eu conseguiria com o substr():

return this.substr( 0, max );

É isso galera. Por enquanto bem básico, mas me digam se está sendo fácil entender o que são, o tão temido mundo da expressão regular.