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 / 16 Page
    [ 성공ok)unicorn Qcam N200 유니콘 카메라 시놀로지nas에 붙이기 성공/설정값 사용가 ] 댓글 4

    유니콘unicorn Qcam N200 카메라 시놀로지nas에 붙이기 성공주) 설정은 잘못 될수 잇습니다 ...제 nas에 붙여 있는 상태 입니다…

    [ ipTIME 공유기에서 네트워크 프린터 설정하기. iptime_network_printer_setup.exe… ] 댓글 1

    ipTIME 공유기에서 네트워크 프린터 설정하기.ipTIME 공유기에서 네트워크 프린터 설정하기.공유기 펌웨어 9.38 이후 버전을 설치 하시면…

    [ [EzLink] 사용자 홈 폴더 활성화 ]

    [EzLink] 사용자 홈 폴더 활성화\r\n2010년 12월 31일isulNAS\r\n\r\n사용자 홈 폴더 활성화\r\nEzLink는 사용자…

    [ VMware 보안 업데이트12.x 권고 ]

    \r\n\r\n\r\nVMware 보안 업데이트 권고2016.11.16\r\n\r\n\r\n\r\n\r\n\r\n□ 개요o VMware社는 자사…

    [ 실패)DSM 6에 WOL 설정/리얼 mac으로 수정 실패 ]

    실패)DSM 6에 WOL 설정/리얼 mac으로 수정 실패DSM 6에 WOL 설정하기/ mac 수정 win10-64b-vmware 에서 synob…

    [ 펌)시놀로지 보안 강화 하는법 / 해킹 당하다 대응 방법/ QR 리더 익스트림 OTP 링크 추가 설치 ]

    시놀로지 보안 강화 하는법 / 해킹 당하다 대응 방법 > 2차 인증 otp 패스입력.....QR 리더 익스트림모바일 QR 코드리더 OTP …

    [ piwigo에서 동영상 mp4의 썸네일 만들기(만들기 실패) ] 댓글 5

    piwigo에서 동영상 mp의 썸네일 만들기(만들기 실패) 하였습니다기본 설치 플러그인기본 :1) videojs : 기본작업 / 썸네일 만들기 …

    [ WinSCP접속 puttygen이용 synology 개인키, 공개키 만들어 접속하기 ]

    참고) 관련자료 링크 참조synology 개인키, 공개키 만들기http://m.blog.naver.com/o57o/220603678533시놀로지…

    [ 하이언스tv006 tv-box 사용소감 ]

    안드로이드 tv box 하이언스 tv006를 구입하여 거설에 설치 홈시어터에 연결 3일 동안 사용 소감을 기록하여 봅니다장점 1. 저렴하다2.안…

    [ Home pc 11q.kr index.html 변경 소스 저장 ]

    시놀로지 web경로에 하위경로 홈피구성web/g5s에 저의홈피구성 되어 있습니다홈피 ddns경로에 하위경로 메인홈페이지를 연결하고자index.h…

    [ mbox의 홈씨어터 앰프 파워 미동작시 TV전원 cec동작 ]

    mbox가( 가칭 u5pvr 사용중) 현제 hdmi로 앰프로 연결앰프에서 TV로 연결 되어 있음mbox이용 tv시청시 전원을 앰프 전원 먼저 온…

    [ 성공)u5pvr_live-tv/iptv의 epg 설정 시놀로지 docker 설정 방법에서 역방향프록시 규칙… ]

    성공)u5pvr_live-tv/iptv의 epg 설정 시놀로지 docker 설정 방법에서 역방향프록시 규칙 설정으로 epg경로 설정 iptv-e…

    [ ■역방향프록시 응용) 시놀로지 도커 사용자 epg2xml/xmltv.xml 을 dsm 응용프로그램/역방향 프… ]

    ■ 시놀로지 도커 사용자 epg2xml/xmltv.xml 을 dsm 응용프로그램/역방향 프록시 규칙으로 웹상에서 epg 정보 출력 하기 ▶ ds…


    ♥간단_메모글♥


    최근글


    새댓글



    PHP 안에 HTML ☞ 홈페이지 화면갱신 시간은 ♨
    ▶ 2024-07-02 14:48:07

    오늘의 홈 현황


    • 현재 접속자♨ 645 명
    • 오늘 가입자※ 2 명
    • 어제 가입자※ 2 명
    • 주간 가입자※ 13 명
    • 오늘 방문자 1,672 명
    • 어제 방문자 2,079 명
    • 최대 방문자 13,042 명
    • 전체 방문자 4,408,801 명
    • 전체 게시물※ 8,672 개
    • 전체 댓글수※ 24,814 개
    • 전체 회원수 11,081 명

    QR코드


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

    알림 0








    최신글↑