Python 은 정규 표현 식 을 사용 하여 HTML 태그 추출 기능 을 제거 합 니 다.

정규 표현 식 은 특수 한 문자 시퀀스 로 패턴 에 저 장 된 전문 문법 을 사용 하여 다른 문자열 이나 문자열 집합 을 일치 시 키 거나 찾 을 수 있 습 니 다.정규 표현 식 은 UNIX 세계 에서 널리 사용 된다.
다음은 Python 이 정규 표현 식 으로 HTML 탭 추출 문 자 를 제거 하 는 것 을 소개 합 니 다.구체 적 인 코드 는 다음 과 같 습 니 다.

# -*- coding: utf-8-*-
import re
##  HTML    
# HTML        
#@param htmlstr HTML   .
def filter_tags(htmlstr):
 #   CDATA
 re_cdata=re.compile('//<![CDATA[[^>]*//]]>',re.I) #  CDATA
 re_script=re.compile('<s*script[^>]*>[^<]*<s*/s*scripts*>',re.I)#Script
 re_style=re.compile('<s*style[^>]*>[^<]*<s*/s*styles*>',re.I)#style
 re_br=re.compile('<brs*?/?>')#    
 re_h=re.compile('</?w+[^>]*>')#HTML  
 re_comment=re.compile('<!--[^>]*-->')#HTML  
 s=re_cdata.sub('',htmlstr)#  CDATA
 s=re_script.sub('',s) #  SCRIPT
 s=re_style.sub('',s)#  style
 s=re_br.sub('n',s)# br     
 s=re_h.sub('',s) #  HTML   
 s=re_comment.sub('',s)#  HTML  
 #       
 blank_line=re.compile('n+')
 s=blank_line.sub('n',s)
 s=replaceCharEntity(s)#    
 return s
##    HTML    .
#         HTML        .
#            CHAR_ENTITIES ,    HTML    .
#@param htmlstr HTML   .
def replaceCharEntity(htmlstr):
 CHAR_ENTITIES={'nbsp':' ','160':' ',
    'lt':'<','60':'<',
    'gt':'>','62':'>',
    'amp':'&','38':'&',
    'quot':'"','34':'"',}
  
 re_charEntity=re.compile(r'&#?(?P<name>w+);')
 sz=re_charEntity.search(htmlstr)
 while sz:
  entity=sz.group()#entity  , >
  key=sz.group('name')#  &; entity, > gt
  try:
   htmlstr=re_charEntity.sub(CHAR_ENTITIES[key],htmlstr,1)
   sz=re_charEntity.search(htmlstr)
  except KeyError:
   #     
   htmlstr=re_charEntity.sub('',htmlstr,1)
   sz=re_charEntity.search(htmlstr)
 return htmlstr
def repalce(s,re_exp,repl_string):
 return re_exp.sub(repl_string,s)
if __name__=='__main__':
 str='' #      html   
 str=filter_tags(str)
 print(str)
총결산
위 에서 말 한 것 은 소 편 이 소개 한 Python 이 정규 표현 식 으로 HTML 태그 추출 기능 을 제거(여과)하 는 것 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.소 편 은 바로 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
만약 당신 이 본문 이 당신 에 게 도움 이 된다 고 생각한다 면,전 재 를 환영 합 니 다.번 거 로 우 시 겠 지만 출처 를 밝 혀 주 십시오.감사합니다!

좋은 웹페이지 즐겨찾기