javascript 문자열 공백 최종 버 전 제거(utf 8 지원)

사실 이 문 제 는 js 자체 가 유 니 코드 인 코딩 이 라면 정규 표현 식\s 로 모든 공백 을 없 앨 수 있 지만,js 가 utf-8 인 코딩 이 라면 인 코딩 160 의 빈 칸 을 처리 할 수 없습니다.다음은 정규 표현 식 에서 32 로 인 코딩 된 빈 칸 을 제거 하고 문자열 양쪽 의 유 니 코드 빈 칸 을 재 귀적 으로 제거 합 니 다

/**
*@author
*@version v1.0
*@date 2009/11/14 22:51
*/
String.prototype.trim = function() {
var r = this.replace(/(^\s*)|(\s*$)/g, "");
r = Lremoveblank(r);
r = Rremoveblank(r);
return r;
}

function Lremoveblank(s) {
if (s.length == 1 && s.charCodeAt(0) == 160)
return "";
if (s.charCodeAt(0) == 160) {
s = s.substr(1, s.length - 1);
return removeblank(s);
}
else {
return s;
}
}

function Rremoveblank(s) {
if (s.length == 1 && s.charCodeAt(0) == 160)
return "";
if (s.charCodeAt(s.length-1) == 160) {
s = s.substr(0, s.length - 1);
return Rremoveblank(s);
}
else {
return s;
}
}

//--

//e.g.
var a = "  a  ";
alert("b" + a.trim() + "b");

좋은 웹페이지 즐겨찾기