[ClassicASP] 모든 태그 제거 & 허용태그 외의 모든 html 태그 제거 (2012-04-18 수정)
♨ 카랜더 일정 :
링크
첨부
컨텐츠 정보
- 14,295 조회
본문
\r\n
\n
\r\n |
\r\n \r\n \r\n<% Option Explicit %> \r\n<% \r\n \r\n' ========================================================= \r\n' 패턴으로 치환할수 있는 eregi_replace()함수 \r\n' PHP에는 있으나 ASP에는 없기 때문 \r\n' ========================================================= \r\nFunction eregi_replace(pattern, replace, text) \r\n Dim eregObj \r\n Set eregObj = New RegExp \r\n eregObj.Pattern = pattern '패턴 설정 \r\n eregObj.IgnoreCase = True '대소문자 구분 여부 \r\n eregObj.Global = True '전체 문서에서 검색 \r\n eregi_replace = eregObj.Replace(text, replace) 'Replace String \r\nEnd Function \r\n' ========================================================= \r\n' 모든 태그제거 \r\n' 사용법 : strip_tags1(content) \r\n' content = "....." \r\n' strip_tags2(content) \r\n' ========================================================= \r\nFunction strip_tags1(str) \r\n Dim content \r\ncontent = str content = eregi_replace("<(/)?([a-zA-Z]*)(\\s[a-zA-Z]*=[^>]*)?(\\s)*(/)?>","",content) ' all \r\n content = eregi_replace("<(no)?script[^>]*>.*?</(no)?script>","",content) ' scripts \r\n content = eregi_replace("<style[^>]*>.*</style>", "", content) ' style \r\n content = eregi_replace("<(\""[^\""]*\""|\'[^\']*\'|[^\'\"">])*>","",content) ' TAGS \r\n content = eregi_replace("<\\w+\\s+[^<]*\\s*>","",content) ' nTAGS \r\n content = eregi_replace("&[^;]+;","",content) ' entity_refs \r\n content = eregi_replace("\\s\\s+","",content) ' whitespace \r\nstrip_tags1 = content End Function \r\n' ========================================================= \r\n' 허용태그 외의 모든 태그제거 \r\n' 사용법 : strip_tags2(content, allowtags) \r\n' content = "....." \r\n' allowtags = "br,a,img,table,b,font,div,center,embed" ' 허용 ※ 태그 붙여서 연속으로, 공백 오류발생 \r\n' strip_tags2(content, allowtags) \r\n' ========================================================= \r\nFunction strip_tags2(str,allowtags) \r\n Dim content, tags \r\n content = str \r\n tags = replace(allowtags,",","|") \r\n content = eregi_replace("<(/?)(?!/|" & tags & ")([^<>]*)?>","<$1$2>",content) \r\n content = eregi_replace("(javascript|vbscript)+","$1//",content) \r\n content = eregi_replace("(.location|location.|onload=|.cookie|alert|window.open|onmouse|onkey|onclick|view-source)+","//",content) '//자바스크립트 실행방지 \r\n strip_tags2 = content \r\nEnd Function '사용예 \r\nDim allowtags, content \r\nallowtags = "br,a,img,b,font,div,center,embed" ' 허용 ※ 태그 붙여서 연속으로, 공백 오류발생 \r\ncontent = "<font color=red>허용하지 않은 태그</font>가<br />잘 <b>보이나요?</b><br /><script></script>" \r\ncontent = content & "<table><div align=center>아주 유용할꺼에요~</div><body><html><xmp><pre>" \r\nresponse.write "strip_tags1 결과<br />"& strip_tags1(content) &"<br /><br />" \r\nresponse.write "strip_tags2 결과<br />"& strip_tags2(content, allowtags) \r\n%> 결과 <소스보기> \r\n strip_tags1 결과 \r\n허용하지 않은 태그가잘 보이나요?아주 유용할꺼에요~ \r\nstrip_tags2 결과 \r\n<font color=red>허용하지 않은 태그</font>가<br />잘 <b>보이나요?</b><br /><script></script><table><div align=center>아주 유용할꺼에요~</div><body><html><xmp><pre> 참고자료 http://flashcafe.org/3717 http://dualist.tistory.com/115 |
[이 게시물은 관리자님에 의해 2013-11-18 21:29:50 11.H_BBS에서 이동 됨]
뷰PDF 1,2
office view
관련자료
-
링크
댓글목록
등록된 댓글이 없습니다.