태그제거 공백제거 문자열바꿈 등..
로빈아빠
본문
태그제거 공백제거 문자열바꿈 등..
<HTML> <HEAD> <SCRIPT language="javascript"> /* 방법 1 : 내용: String 객체의 프로토타입에 stripTags라는 메서드를 추가. 결과: 실행 속도가 느림. "<",">" 무조건 제거됨(태그가 아니더라도) */ String.prototype.stripTags = function () { var str = this; var pos1 = str.indexOf('<'); if (pos1 == -1) return str; else { var pos2 = str.indexOf('>', pos1); if (pos2 == -1) return str; return (str.substr(0, pos1) + str.substr(pos2+1)).stripTags(); } } function ConvertText1(form){ var str = form.org.value.stripTags(); str = str.replace(new RegExp(" ","gim")," "); form.conv.value = str; } /* 방법 2: 내용: 정규표현식을 이용했습니다. 결과: 일부 태그를 처리 못하는 경우 있슴. 실행 속도는 빠름 태그가 아닌 "<",">" 식별 가능 */ function ConvertText2(form){ var str = form.org.value.replace(new RegExp("<(/)?([a-zA-Z]*)(\\s[a-zA-Z]*=[^>]*)?(\\s)*(/)?>","gim"), ""); str = str.replace(new RegExp(" ","gim")," "); form.conv.value = str; } </SCRIPT> </HEAD> <BODY> <FORM> <TEXTAREA name="org" cols="80" rows="20"></TEXTAREA> <TEXTAREA name="conv" cols="80" rows="20"></TEXTAREA> <INPUT type="button" value="방법 1" onClick="ConvertText1(this.form)"> <INPUT type="button" value="방법 2" onClick="ConvertText2(this.form)"> </FORM> </BODY> </HTML>
<script language="JavaScript"> <!-- // HTML 특수문자를 변환 String.prototype.htmlChars = function() { var str = ((this.replace('"', '&')).replace('"', '"')).replace('\'', '''); return (str.replace('<', '<')).replace('>', '>'); } //좌우 공백없애는 함수 String.prototype.trim = function(){ return this.replace(/(^s*)|(s*$)/g, ""); // 사용방법 : form.msg.value.trim(); } //좌우 공백없애는 함수 function trim(string) { var temp = ""; string = '' + string; splitstring = string.split(" "); for(i = 0; i < splitstring.length; i++) temp += splitstring[i]; return temp; // 사용방법 : trim(form.msg.value); } // 왼쪽 공백없애는 함수 String.prototype.ltrim = function() { return this.replace(/^s*/g, ""); } // 오른쪽 공백없애는 함수 String.prototype.rtrim = function() { return this.replace(/s*$/g, ""); } // 태그만 제거 String.prototype.stripTags = function() { var str = this; var pos1 = str.indexOf('<'); if (pos1 == -1) return str; else { var pos2 = str.indexOf('>', pos1); if (pos2 == -1) return str; return (str.substr(0, pos1) + str.substr(pos2+1)).stripTags(); } } // 대소문자 구별하지 않고 단어 위치 찾기 String.prototype.ipos = function(needle, offset) { var offset = (typeof offset == "number")?offset:0; return str.toLowerCase().indexOf(needle.toLowerCase(), offset); } // 대소문자 구별하지 않고 뒤에서부터 단어위치 찾기 String.prototype.ripos = function(needle, offset) { var offset = (typeof offset == "number")?offset:0; return str.toLowerCase().lastIndexOf(needle.toLowerCase(), offset); } //특정문자열을 모두 찾아서 원하는 문자열로 모두 바꾸기 String.prototype.replaceExp = function(from, to){ return this.replace(new RegExp(from, "g"), to); } String.prototype.replaceEval = function(from, to){ return this.replace(eval("/" + from + "/g"), to); } // 문자열을 배열로 String.prototype.toArray = function() { var len = this.length; var arr = new Array; for (var i=0; i<len; i++) arr[i] = this.charAt(i); return arr; } </script>
관련링크
댓글목록
등록된 댓글이 없습니다.