In acest tutorial puteti invata cum sa extrageti in JavaScript un anumit numar de caractere, sau cuvinte de la inceputul unui text.
- Ca sa obtineti primele "n" caractere dintr-un sir-text este usor, se foloseste functia JavaScript: substr().
Exemplu:
<script>
var text = 'Extrage textul cu primele 40 caractere din acest sir. Lectii si tutoriale PHP-MySQL - marplo.net/';

var txt = text.substr(0, 40);        //  Extrage textul cu primele 40 caractere

// test
alert(txt);           // Extrage textul cu primele 40 caractere d
</script>
- Primul caracter are index 0.

Extrage un numar de cuvinte specificat

Dupa cum se observa in exemplu de sus, cand se extrage un anumit numar de caractere, ultimul cuvant poate fi taiat.
Daca aveti un text din care doriti sa preluati o portiune (un subsir), si sa adaugati la el un buton cu "Citeste restul...", e mai bine ca ultimul cuvant sa fie retinut asa cum e, intreg. In acest caz vom extrage in loc de caractere un numar specific de cuvinte.
Cuvintele sunt separate prin spatiu, astfel, se poate folosi o expresie regulata care sa reprezinte un sir cu un numar specific de spatii, egal cu numarul de cuvinte ce trebuie preluat ( /([^ ]*[ ]{0,1}){1, nr}/g ), apoi se aplica functia JavaScript: match() cu expresia regulata ca sa obtinem subsirul.

- Pentru a ne asigura ca avem doar un singur spatiu intre cuvinte, vom aplica inainte acest cod:
  text.replace(/\s\s+/g, ' ')   - inlocuieste mai multe spatii goale cu un singur caracter spatiu.
Iata exemplu cu acelasi text:
<script>
var text = 'Extrage textul cu primele 40 caractere din acest sir. Lectii si tutoriale PHP-MySQL - marplo.net/';
var nrw = 8;                // numarul de cuvinte ce trebuie extras

var rgxwords = new RegExp('([^ ]*[ ]{0,1}){1,'+nrw+'}', 'g');      // expresia regulata cu nr. de spatii

text = text.replace(/\s\s+/g, ' ');        // inlocuieste spatii multiple cu un singur spatiu
var txt = text.match(rgxwords)[0];         // obtine subsirul cu "nrw" numar de cuvinte

// test
alert(txt);           // Extrage textul cu primele 40 caractere din acest
</script>

Sterge tag-uri

Daca in continutul text sunt tag-uri HTML, cand va fi extras un subsir din acel text, este foarte posibil sa ramana tag-uri deschise care vor afecta formatul continutului cand acel subsir e adaugat in pagina. In acest caz e mai bine ca tag-urile sa fie sterse inainte de extragerea portiunii de text.
Ca sa stergeti tag-urile dintr-un sir, se poate folosi codul:   text.replace(/\<[^\>]*\>/gi, '') .

- Exmplu, stergere tag-uri si preluare un anumit numar de caractere:
<script>
var text = 'Continut text <i class="cls">cu tag-uri HTML</i>. Cursuri gratuite: <b>www.coursesweb.net/</b>';

text = text.replace(/\<[^\>]*\>/gi, '');     // sterge tag-urile
var txt = text.substr(0, 30);           //  Extrage textul cu primele 30 caractere
// test
alert(txt);           // Continut text cu tag-uri HTML.
</script>

- Exmplu, stergere tag-uri si preluare un anumit numar de cuvinte:
<script>
var text = 'Continut text <i class="cls">cu tag-uri HTML</i>. Cursuri gratuite: <b>www.coursesweb.net/</b>';
var nrw = 6;                // numarul de cuvinte ce trebuie extras

var rgxwords = new RegExp('([^ ]*[ ]{0,1}){1,'+nrw+'}', 'g');      // expresia regulata cu nr. de spatii

text = text.replace(/\<[^\>]*\>/gi, '');    // sterge tag-urile
text = text.replace(/\s\s+/g, ' ');        // inlocuieste mai multe spatii cu un singur spatiu
var txt = text.match(rgxwords)[0];         // obtine subsirul cu "nrw" numar de cuvinte

// test
alert(txt);           // Continut text cu tag-uri HTML. Cursuri
</script>

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Ce tip de <input> creaza un camp de text care trebuie sa contina doar numere?
type="text" type="number" type="date"
<input type="number" name="points" min="5" max="80" />
Ce proprietate CSS permite modificarea transparentei unui element?
font-style opacity color
#id {
  filter:alpha(opacity=40);    /* for IE */
  opacity:0.4;
}
Clic pe functia care formateaza un numar la o anumita lungime de caractere.
toPrecision() exp() toFixed()
var num = 12.84567;
alert( num.toPrecision(3) );       // 12.8
Ce functie aranjeaza aleator elementele dintr-un array?
natsort() shuffle() sort()
$lang =[10=>"PHP", 20=>"JavaScript", "site"=>"coursesweb.net");
shuffle($lang);
var_export($lang);     // array (0=>"coursesweb.net", 1=>"PHP", 2=>"JavaScript")
Indicati Superlativul cuvantului "good" (bun).
better best goodest
She is the best in our class.
- Ea este cea mai buna din clasa noastra.
Care este Superlativul cuvantului "bueno" (bun)?
el mejor más bueno muy bueno
Él es el mejor en nuestra clase.
- El este cel mai bun din clasa noastra.
Extrage un numar de caractere si cuvinte din text

Last accessed pages

  1. Trecut perfect (2064)
  2. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (121220)
  3. Curs si Tutoriale JavaScript (50692)
  4. Sintaxa JavaScript (6199)
  5. Curs PHP MySQL, Tutoriale si Scripturi PHP (48329)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (846)
  2. Curs HTML gratuit Tutoriale HTML5 (615)
  3. Curs PHP MySQL, Tutoriale si Scripturi PHP (559)
  4. Curs si Tutoriale Ajax (556)
  5. Curs si Tutoriale JavaScript (553)