online: 2; azi: 739; total: 51194 Webdesign - Coduri-si-functii-in-js - 12

JavaScript trim, rtrim si ltrim

Functiile trim(), rtrim(), si ltrim() sunt in general cunoscute si folosite in PHP. Sunt utile cand se lucreaza cu siruri, dar JavaScript nu are predefinite aceste functii.
Iata trim(), rtrim() si ltrim() create manual in JavaScript:
// trim, rtrim, ltrim
function trim(str, chr) {
  var rgxtrim = (!chr) ? new RegExp('^\\s+|\\s+$', 'g') : new RegExp('^'+chr+'+|'+chr+'+$', 'g');
  return str.replace(rgxtrim, '');
}
function rtrim(str, chr) {
  var rgxtrim = (!chr) ? new RegExp('\\s+$') : new RegExp(chr+'+$');
  return str.replace(rgxtrim, '');
}
function ltrim(str, chr) {
  var rgxtrim = (!chr) ? new RegExp('^\\s+') : new RegExp('^'+chr+'+');
  return str.replace(rgxtrim, '');
}

      - trim() - Sterge spatiile goale, sau alt caracter specificat ca al doilea parametru, de la inceputul si sfarsitul unui sir.
      - rtrim() - Sterge spatiile goale, sau alt caracter specificat ca al doilea parametru, de la sfarsitul unui sir.
      - ltrim() - Sterge spatiile goale, sau alt caracter specificat ca al doilea parametru, de la inceputul unui sir.

Cum se utilizeaza functiile trim, rtrim, ltrim

Intai se copie aceste functii in script-ul JS.
Pentru a sterge spatiile goale, se apeleaza functia cu sirul respectiv ca argument; va returna acel sir (string) fara spatii goale la inceput si sfarsit: trim(string).
Pentru a sterge alt caracter decat spatiu gol de la inceput si sfarsit, se adauga un al doilea argument la apelarea functiei, cu acel caracter intre ghilimele: trim(string, 'caracter').

Exemple trim, rtrim, ltrim

1. Sterge spatiile goale de la inceputul si sfarsitul unui sir, apoi adauga rezultatul intr-un element HTML.
<pre id="sresult"></pre>
<script type="text/javascript"><!--
// Curs JavaScript - http://www.discant.ro/javascript/
// Functiile trim(), rtrim(), ltrim()
function trim(str, chr) {
  var rgxtrim = (!chr) ? new RegExp('^\\s+|\\s+$', 'g') : new RegExp('^'+chr+'+|'+chr+'+$', 'g');
  return str.replace(rgxtrim, '');
}
function rtrim(str, chr) {
  var rgxtrim = (!chr) ? new RegExp('\\s+$') : new RegExp(chr+'+$');
  return str.replace(rgxtrim, '');
}
function ltrim(str, chr) {
  var rgxtrim = (!chr) ? new RegExp('^\\s+') : new RegExp('^'+chr+'+');
  return str.replace(rgxtrim, '');
}

var string1 = '   Initial cu 3 caractere spatiu la inceput si sfarsit   ';

// sterge caracterele goale (spatii) de la inceput si sfarsit, precum si separat
var trim_re = 'trim(str): *'+ trim(string1)+ '*';
var rtrim_re = 'rtrim(str): *'+ rtrim(string1)+ '*';
var ltrim_re = 'ltrim(str): *'+ ltrim(string1)+ '*';

document.getElementById('sresult').innerHTML = trim_re+ '<br/>'+ rtrim_re+ '<br/>'+ ltrim_re;
--></script>

Rezultat:
trim(str): *Initial cu 3 caractere spatiu la inceput si sfarsit*
rtrim(str): *     Initial cu 3 caractere spatiu la inceput si sfarsit*
ltrim(str): *Initial cu 3 caractere spatiu la inceput si sfarsit     *

2. Sterge un anumit caracter (/) de la inceputul si sfarsitul sirului.
<div id="sresult2"></div>
<script type="text/javascript"><!--
 /* Aici se adauga functiile trim(), rtrim(), ltrim() */

var string2 = '///Initial cu 3 "/" la inceput si sfarsit///';

// sterge "/" de la inceput /sfarsit
var trim_re = 'trim(str, chr): '+ trim(string2, '/');
var rtrim_re = 'rtrim(str, chr): '+ rtrim(string2, '/');
var ltrim_re = 'ltrim(str, chr): '+ ltrim(string2, '/');

document.getElementById('sresult2').innerHTML = trim_re+ '<br/>'+ rtrim_re+ '<br/>'+ ltrim_re;
--></script>

Rezultat:
trim(str, chr): Initial cu 3 "/" la inceput si sfarsit
rtrim(str, chr): ///Initial cu 3 "/" la inceput si sfarsit
ltrim(str, chr): Initial cu 3 "/" la inceput si sfarsit///