모든 태그를 제거하는 다음과 같은 코드가 있습니다.
import re
def cleanhtml(raw_html):
cleanr = re.compile('<.*?>')
cleantext = re.sub(cleanr, '', raw_html)
return cleantext
payload = '<a href="asdasda.htm">I am inside</a><br/><p>Tagsssss</p>'
print cleanhtml(payload)
<br>
태그 를 무시 하고 다른 모든 태그를 제거 하는 방법은 무엇입니까? 이 코드는 모든 줄을 함께 추가합니다.
부정적 예측 사용 :
<(?!br).*?>
데모 : https://regex101.com/r/91s8rW/1
def cleanhtml(raw_html):
cleanr = re.compile(r'<(?!br).*?>')
cleantext = cleanr.sub('', raw_html)
return cleantext
여러 br
태그 를 감지 하고 하나로 바꾸려면 다음 정규식을 사용할 수 있습니다.
re.sub(r'(<br>)+', r'\1', your_text)
데모:
In [7]: re.sub(r'(<br>)+', r'\1', 'foobar<br><br><br>barbaz')
Out[7]: 'foobar<br>barbaz'
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다