11.Nas_1


새창 작성 수정 목록 링크 Edit G카랜다 HDD HDD HDD 게시물 주소 복사


[ClassicASP] 모든 태그 제거 & 허용태그 외의 모든 html 태그 제거 (2012-04-18 수정)

♨ 카랜더 일정 :
  • 링크

  • 첨부

  • 컨텐츠 정보

    본문

    \r\n
    \r\n
    [ClassicASP] 모든 태그 제거 & 허용태그 외의 모든 html 태그 제거 (2012-04-18 수정)글자 확대 글자 축소
    \r\n
      2012-04-17 22:22 Hit.560 트랙백주소 게시글을 twitter로 보내기 게시글을 facebook으로 보내기 게시글을 Me2Day로 보내기 이 게시글을 요즘으로 보내기 게시글을 구글로 북마크 하기 게시글을 네이버로 북마크 하기
    \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\n
    Function eregi_replace(pattern, replace, text)
    \r\n
     Dim eregObj
    \r\n
     
    \r\n
     Set eregObj = New RegExp
    \r\n
     
    \r\n
     eregObj.Pattern = pattern '패턴 설정
    \r\n
     eregObj.IgnoreCase = True '대소문자 구분 여부
    \r\n
     eregObj.Global = True '전체 문서에서 검색
    \r\n
     
    \r\n
     eregi_replace = eregObj.Replace(text, replace) 'Replace String
    \r\n
    End Function
    \r\n
     
    \r\n
     
    \r\n
    ' =========================================================
    \r\n
    ' 모든 태그제거
    \r\n
    ' 사용법 : strip_tags1(content)
    \r\n
    ' content = "....."
    \r\n
    ' strip_tags2(content)
    \r\n
    ' =========================================================
    \r\n
    Function strip_tags1(str)
    \r\n
      Dim content
    \r\n

      content = str  
    \r\n
      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\n

      strip_tags1 = content
    \r\n
    End Function
    \r\n
     
    \r\n
     
    \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\n
    Function strip_tags2(str,allowtags)
    \r\n
      Dim content, tags
    \r\n
     
    \r\n
      content = str
    \r\n
      tags = replace(allowtags,",","|")
    \r\n
      content = eregi_replace("<(/?)(?!/|" & tags & ")([^<>]*)?>","<$1$2&gt",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
     
    \r\n
      strip_tags2 = content
    \r\n
    End Function
    \r\n
     
    \r\n
     
    \r\n
    '사용예
    \r\n
    Dim allowtags, content
    \r\n
    allowtags = "br,a,img,b,font,div,center,embed"  ' 허용 ※ 태그 붙여서 연속으로, 공백 오류발생
    \r\n
     
    \r\n
    content = "<font color=red>허용하지 않은 태그</font>가<br />잘 <b>보이나요?</b><br /><script></script>"
    \r\n
    content = content & "<table><div align=center>아주 유용할꺼에요~</div><body><html><xmp><pre>"
    \r\n
     
    \r\n
    response.write "strip_tags1 결과<br />"& strip_tags1(content) &"<br /><br />"
    \r\n
    response.write "strip_tags2 결과<br />"& strip_tags2(content, allowtags)
    \r\n
    %>
    \r\n

    결과


    <소스보기>
    \r\n
    strip_tags1 결과
    \r\n
    허용하지 않은 태그가잘 보이나요?아주 유용할꺼에요~
    \r\n
     
    \r\n
    strip_tags2 결과
    \r\n
    <font color=red>허용하지 않은 태그</font>가<br />잘 <b>보이나요?</b><br /><script&gt</script&gt<table&gt<div align=center>아주 유용할꺼에요~</div><body><html&gt<xmp&gt<pre&gt


    참고자료
    http://flashcafe.org/3717 
    http://dualist.tistory.com/115
    \r\n

    \n
    [이 게시물은 관리자님에 의해 2013-11-18 21:29:50 11.H_BBS에서 이동 됨]
    [ 추가 정보 ... 더보기) ]
    뷰PDF 1,2



    office view

    관련자료

    댓글목록

    등록된 댓글이 없습니다.

    목록

    새창 작성 수정 목록 링크 Edit G카랜다 HDD HDD HDD 게시물 주소 복사




    Total 1,684 / 17 Page
    [ [림스업] 배추 게시판 림스모바일 사용시 삭제 않되는 문제 추가 m/bbs/delete.php에 스킨 경로… ]

    // 배추 게시판 림스모바일 사용시 삭제 않되는 문제 추가 m/bbs/delete.php에 스킨 경로 #3추가시작// 스킨경로 추가 내용$boa…

    [ 메인샘플 - v3_amina ] 댓글 1

    \r\n모바일 아미나 테마스킨 V3을 pc모드에 올리고 싶습니다\r\n\r\n\r\n\r\n LV 4 심봉사\r\n 신고\r\n 글주소\r\n …

    [ usb2 3.5외장하드와 타임백업후 먹통 ]

    ###\r\n타임백업 usb2에 연결시 먹통\r\n■ https://11q.kr는 정보를 찾아 공유 합니다.. https://11q.kr

    [ 홈페이지 수정시 editplus 대용으로 간편한 notepad2_4.2.25_x86 입니다 ] 댓글 3

    ###홈페이지 수정시 editplus 대용으로 간편한 notepad2_4.2.25_x86 입니다totalcmd를 사용하는 분는notepad2_4…

    [ 시놀로지 NAS DS712+ 제품 리뷰사진 ]

    >\r\n>\r\n■ shimss home 는 내일을 위하여 정보를 찾\r\n아 공유 합니다. https://11q.kr.com\r\…

    [ azuploader 대용량 업로드 스킨 댓글 가능 변경 ] 댓글 3

    azuploader 대용량 업로드 스킨 댓글 가능 변경\r\n\r\n♠\r\n♠ shimss home 는 https://11q.kr.com 시놀…

    [ 일반 윈도우와 윈도우 서버와의 차이점은 무엇인가요? ]

    일반 윈도우 제품군 보다, 서버 제품군이 다음의 면에서 더 중요하게 다루고 있습니다.메모리의 최대 지원 크기많은 프로세서(CPU)의 수네트워크 …

    [ piwigo 설정) 모든언어가 활성화 되어 있으면 기본 LOGOUT 상태에 디랙토리 정보에 कोंकणी [I… ]

    piwigo 설정)모든언어가 활성화 되어 있으면 기본 LOGOUT 상태에 디랙토리 정보에कोंकणी [IN] 언어가 보이는것 디폴트( 한글언어)…

    [ 외부연결 또는스마트폰 lte 연결로 dsm/homepage avast 인터넷시큐리티 hanaro Telec… ]

    외부연결 또는 스마트폰 lte 연결로 dsm/homepage avast 인터넷시큐리티 hanaro Telecom inc 비공개 설정으로 연결 문…

    [ 공유기 포트개방 dmz와 포트포워딩 차이 ]

    서버사용자가 공유기 초기화 후 포트포워딩 입럭관리기 소일거리라면 dmz로 내부 ip 하나로 해결하세요>\r\n>\r\n>\r\n…

    [ 메일플러스_최종성공)시놀로지 mailplus 간단 설정및 수발신 만들기/알림 설정 dsm 제어판 설정_공유… ] 댓글 4

    공유기 포워딩 관련 일괄중지후메일 서버 기본포트 25 개방구글 계정을 단독으로 하나 만들어 기본 설정 합니다.>> 메일 발신을 구글 …

    [ 펌자료)리눅스 시스템 , 하드웨어 명령어 등 알아보기 ]

    리눅스 시스템 , 하드웨어 명령어 등 알아보기UNIX+Linux2007.04.03 01:01리눅스 시스템 , 하드웨어 명령어 등 알아보기우리가 …

    [ Acdsee20 HTML Album 만들기 ]

    Acdsee20 HTML Album 만들기 \r\n\r\n--------------------------------------\r\n♠ 출처는 …


    ♥간단_메모글♥


    최근글


    새댓글



    PHP 안에 HTML ☞ 홈페이지 화면갱신 시간은 ♨
    ▶ 2024-07-01 15:32:21

    오늘의 홈 현황


    • 현재 접속자♨ 659 명
    • 오늘 가입자※ 0 명
    • 어제 가입자※ 4 명
    • 주간 가입자※ 12 명
    • 오늘 방문자 1,628 명
    • 어제 방문자 1,787 명
    • 최대 방문자 13,042 명
    • 전체 방문자 4,406,678 명
    • 전체 게시물※ 8,671 개
    • 전체 댓글수※ 24,812 개
    • 전체 회원수 11,078 명

    QR코드


    ☞ QR코드 스캔은 kakao앱 자체 QR코드

    알림 0








    최신글↑