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,672 / 11 Page
    [ 시놀로지에 pc 파일 공유/백업 하기- pc의 strm 의 wavve영화 폴더 nas공유 ]

    시놀로지에 pc 파일 공유/백업 하기1. 준비 진행1) 시놀로지 팩키지 설치 > synnology drive 설치 > 설정팀 폴더 설…

    [ Google 한국어 입력기 - 한글키보드 미지원 기기용 한글 키보드를 지원하지 않는 안드로이드 기기나 안드로… ]

    Google 한국어 입력기 - 한글키보드 미지원 기기용 한글쉴드TV 펨웨어 9.0에서 동글이 usb 리모컨 글자 입력 안되는것 한글/영어 입력 …

    [ termux를 사용하여 Android에서 http 서버 설정 ]

    termux를 사용하여 Android에서 http 서버 설정SSH 서버 설정고통없이 모든 절차를 수행하려면 물리적 키보드가 있거나 ssh 서버를…

    [ 페이지에 안전하지 않은 콘텐츠가 있습니다 ]

    크롬에서 https 로 연결시 http 컨텐츠가 있을 때 "페이지에 안전하지 않은 콘텐츠가 있습니다." 가 나오고 제대로 표시가 안 됨.크롬에서…

    [ ● 윈도우 네트워크 자격증명 입력 연결 안되고 id/passwd 계속 요구 네트워크 드라이브 연결 안 될시 ]

    ● 윈도우 네트워크 자격증명 입력 연결 안되고 id/passwd 계속 요구 네트워크 드라이브 연결 안 될시 설정 참조 드립니다 ▶ secpol.…

    [ ● VMware start 에러 내용 ...해결 ]

    ●VMware start 에러 내용 ...해결ok 해결은 cd-rom 삭제================ 내용 ==============VMwar…

    [ ★★★ ESXI작업)VMware ESXi 7.0 U2 SLIC 및 Unlocker USB NIC 드라이버 통… ] 댓글 30

    ●VMware ESXi 7.0 U2 SLIC 및 Unlocker USB NIC 드라이버 통합 이미지파일 바이두 다운로드 저장i:\1__redpi…

    [ ● ESxi 스토리지 의 데이터스토어 브라우즈에서 디랙토리 이름변경 은 안되어 터미널 ssh로 변경 가능 … ]

    ●ESxi 스토리지 의 데이터스토어 브라우즈에서 디랙토리 이름변경은 안되어 터미널 ssh로 변경 가능 합니다- 저장폴더 이름을 변경mv 파일1 …

    [ ● redpill boot loader build 드라이브추가 또는 삭제 빌드 하기 ] 댓글 1

    ● redpill boot loader build 드라이브추가 또는 삭제 빌드 하기 ▶ 간편 드라이브 추가 삭제 하여 빌드 하기순서 대로 입니다…

    [ 정보)● Synology 7.0 시스템의 Synology Photos는 얼굴 인식 패치를 지원합니다. ] 댓글 3

    ●Synology 7.0 시스템의 Synology Photos는 얼굴 인식 패치를 지원합니다.~에 2021-11-13 퍼블리싱 진라이프https…

    [ ● 12/15 redpill 빌드 작업 log 파일 생성 날자 시간 저장 하기 및 ??_redpill_bui… ] 댓글 20

    ●redpill 빌드 작업 log 파일 생성 날자 시간 저장 하기및 ??redpill_build_2021-12-15T??.log 작업 내용 저장…

    [ ● Proxmox ( PVE) 기본 설치는 간단한 설치 과정 사진 및 시놀로지 설치 메뉴얼 영상 정보 ] 댓글 13

    ●Proxmox ( PVE) 기본 설치는 간단한 설치 과정 사진처음 부타 다시 설치 스샷 합니다다운로드https://www.proxmox.com…

    [ 작업성공● VMWARE ESXI 6.7 설치로 RealTek 랜인식및 tinycore 0.46 으로 설치 … ] 댓글 1

    ● VMWARE ESXI 6.7 설치로 RealTek 랜인식및 tinycore 0.46 으로 설치 빌드작업 성공 작업 기입니다 본작업은 그동안 …

    [ ● [VMWare] esxi 서버 멈춤증상 확인 check 하기 ] 댓글 1

    ●[VMWare] esxi 서버 멈춤증상 확인 check 하기 하드웨어는 메인보드에서 로그 확인해 보시면 되고(조립머신이면 없을 확률이 높습니다…

    [ ● 현관문카메라설치)amazon/아마존직구 Amcrest camera구입 설정작업 )시놀로지 ipcamer… ] 댓글 10

    빅스비 루틴으로 카메라 이밴트 gmail 수신시 스마트폰에서 자동으로 카메라뷰 실행하기https://11q.kr/www/bbs/board.php…

    [ ● Network File System으로 로컬 네트워크 내에서 Synology NAS 의 파일에 액세스하는… ]

    ●Network File System으로로컬 네트워크 내에서 Synology NAS 의 파일에 액세스하는 방법(NFS)네트워크 파일 시스템 /N…


    ♥간단_메모글♥


    최근글


    새댓글



    PHP 안에 HTML ☞ 홈페이지 화면갱신 시간은 ♨
    ▶ 2024-06-02 22:09:43

    오늘의 홈 현황


    • 현재 접속자♨ 621 명
    • 오늘 가입자※ 3 명
    • 어제 가입자※ 4 명
    • 주간 가입자※ 7 명
    • 오늘 방문자 2,192 명
    • 어제 방문자 2,099 명
    • 최대 방문자 13,042 명
    • 전체 방문자 4,355,437 명
    • 전체 게시물※ 8,615 개
    • 전체 댓글수※ 24,678 개
    • 전체 회원수 11,007 명

    QR코드


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

    알림 0








    최신글↑