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,689 / 55 Page
    [ ● Synology-NAS 시놀로지 포트 번호 정리 및 사용중인 내장 포트 방화벽 허용 적용 ]

    ● Synology-NAS 시놀로지 포트 사용중인 내장 포트 방화벽 허용 적용● Synology-NAS 시놀로지 포트 번호 정리 1. 설정 유틸…

    [ Synology NAS에 IPKG Easy Bootstrap nano edit ipkg 를 설치하는 방법 ]

    ●Synology NAS에 IPKG를 설치하는 방법Synology 패키지 센터로 이동하여 오른쪽 상단 모서리에 있는 " 설정 "을 클릭한 다음 …

    [ ● esxi의 putty로 ssh 설치 로 터미널 접속하기 ]

    ● esxi의 putty로 ssh 설치 로 터미널 접속하기 호스트 > 작업 > 서비스 > ssh 사용으로 변경 ▶ putty 로…

    [ ● 헤놀로지 부트로더 Redpill Driver 추가 방법 ]

    ● 헤놀로지 부트로더Redpill Driver 추가 방법https://blog.dateno1.com/?p=3993#comment-457하기 내용…

    [ ● redpill boot loader build 작업 에러 대응 펌 정보 및 starwindconv… ] 댓글 3

    아래내용은 저의 삽질 내용이며 우분투 영어 언어로 재설치 이상 없습니다------------------● 최종재설치)ESxi 서버에 우분투 설치…

    [ ● 시놀로지 nas 서버의 정보 및 홈페이지 정보 카카오 톡 알림 받기 ]

    ● 시놀로지 nas서버의 정보 및 홈페이지 정보 카카오 톡 알림 받기 1) 기본 설정은 메일 설정 진행 2) 카카오 메일수신 친구추가 진행3) …

    [ ● vCenter 없이 ESXi 6.7을 7.0으로 업그레이드하는 방법 ]

    ESXi 7.0에서 지원되지 않는 공급업체 하드웨어 VIB가 호스트에 설치되어 있을 수 있으므로 이러한 VIB가 업그레이드 프로세스를 차단할 수…

    [ ● 빌드 자동파일 sh 구성 )헤놀로지 RedPill tinyCore 만능부트로더 for Native img… ] 댓글 4

    ● 빌드 자동파일 sh 구성 )헤놀로지 RedPill tinyCore 만능부트로더 for Native img 적용파일 및 수정하기 첨부tinyc…

    [ ● esxi ESXi에 대한 SNMP 구성 시작 설정하기 ]

    ●esxiESXi에 대한 SNMP 구성 시작 설정하기ESXi에 대한 SNMP 구성라이브러리에 추가PDF 다운로드피드백업데이트 날짜:2019년05…

    [ ● VMware ESXi 호스트 구성 백업 및 복원: 단계별 가이드 ]

    ●VMware ESXi 호스트 구성 백업 및 복원: 단계별 가이드https://www.nakivo.com/vmware-backup/back-up…

    [ ●esxi서버메인보드mainboard[GIGABYTE] B560M AORUS PRO 시스템 의 메뉴얼및 데디… ] 댓글 5

    ●esxi서버메인보드mainboard[GIGABYTE] B560M AORUS PRO 시스템 의 메뉴얼및 데디타 쉬트(data sheet) 분석및…

    [ ● 동기화 Syncthing를 시놀로지 도커에서 설치 pc 핸드폰 폴더 공유하기 ] 댓글 2

    ● 동기화Syncthing를 시놀로지도커에서 설치 pc 핸드폰 photo 폴더 공유하기Syncthing은 기존의 사유(私有) 동기화 / 클라우드…

    [ ● 시놀로지작업)acme.sh를 이용한 ECDSA Wildcard SSL 인증서 싱글도메인 발급받는 방법 ] 댓글 16

    ● 시놀로지작업)acme.sh를 이용한 ECDSA Wildcard SSL 인증서 싱글도메인 발급받는 방법<인증서는 정상적으로 생성후 htt…

    [ ● 패키지 센터 연결하지 못했습니다 문제 해결 ]

    ●패키지센터 연결하지 못했습니다 문제해결 sudo -i mv /etc/ssl/certs/ca-certificates.crt /etc/ssl/ce…

    [ ● ubuntu rebooting시 자동화 설정 crontab start 하기 ]

    ● ubuntu rebooting시 자동화 설정 crontab start 하기하기와 같이 설치 설정시 재시작이 자동으로 되지 않는다apt ins…

    [ ● Synology 시놀로지 NAS SSL 유료인증서 설치/적용 가이드 ] 댓글 1

    ●시놀로지작업)Synology NASSSL 유료인증서 설치/적용 가이드무료 인증서 작업에 아려움이 많습니다서버 설정중 Let's Encrypt …

    [ ● dsm 7.2.1 update 해결)시놀로지 업데이트를 위한 시스템 용량이 부족합니다. 이 문서를 참조하… ] 댓글 4

    ● 해결)시놀로지업데이트를 위한 시스템 용량이 부족합니다. 이 문서를 참조하여 문제를 해결하십시오.Synology는 시스템 성능과 안정성이 향상…

    [ ★★★2 lets encrypt 인증서 acme.sh 시놀로지 자동 업데이트 만들기 ★★★ ] 댓글 8

    ★★★2 lets encrypt 인증서 acme.sh 시놀로지 자동 업데이트 만들기 ★★★시놀로지 나스 의 도메인 네임서버 Cloudflare …

    [ 시놀리지 SYNOLOGY NAS DS-712+ 공구 하고 싶다 ]

    ◎ 네이버에서 [https://11q.kr 홈피] 검색 찾아오세요 ◎시놀리지 SYNOLOGY NAS DS-712+ 공구 하고 싶다- 공구 기간 …

    [ 보안FTP DS접속하기 ]

    ♥\r\n\r\n\r\n\r\n◎ 네이버에서 [https://11q.kr 홈피] 검색 찾아오세요 ◎ \n[이 게시물은 홈피관리자님에 의해 201…


    ♥간단_메모글♥


    최근글


    새댓글



    PHP 안에 HTML ☞ 홈페이지 화면갱신 시간은 ♨
    ▶ 2025-07-03 12:55:09

    오늘의 홈 현황


    • 현재 접속자♨ 211 명
    • 오늘 가입자※ 0 명
    • 어제 가입자※ 5 명
    • 주간 가입자※ 12 명
    • 오늘 방문자 1,669 명
    • 어제 방문자 2,623 명
    • 최대 방문자 75,211 명
    • 전체 방문자 6,109,337 명
    • 전체 게시물※ 9,028 개
    • 전체 댓글수※ 25,718 개
    • 전체 회원수 11,727 명

    QR코드


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

    알림 0








    최신글↑