python .replace() regex
오늘 끝나고 다 잡으려고요.'</html>'
태그를 붙여서 삭제해도, 제 코드는 아무것도 하지 않는 것 같습니다.한다.replace()
regex를 지원하지 않습니까?
z.write(article.replace('</html>.+', '</html>'))
아니요. Python의 정규 표현식은 모듈에서 처리합니다.
article = re.sub(r'(?is)</html>.+', '</html>', article)
일반적으로:
text_after = re.sub(regex_search_term, regex_replacement, text_before)
정규 표현을 사용하여 텍스트를 바꾸려면 re.sub 함수를 사용합니다.
sub(패턴, 복제, 문자열[, 카운트, 플래그])
비래핑 인스턴스(instance가 됩니다.pattern
로서 통달된 본문에 의하면string
예를 들어 특정 그룹 캡처에 대한 정보를 추출하기 위해 일치를 분석해야 할 경우 함수를 에 전달할 수 있습니다.string
인수. 자세한 내용은 여기를 참조하십시오.
예
>>> import re
>>> re.sub(r'a', 'b', 'banana')
'bbnbnb'
>>> re.sub(r'/\d+', '/{id}', '/andre/23/abobora/43435')
'/andre/{id}/abobora/{id}'
를 사용할 수 있습니다.re
정규식을 위한 모듈이지만 정규식을 원하는 만큼 과잉 죽일 수 있습니다.이런 걸 해볼까?
z.write(article[:article.index("</html>") + 7]
이는 regex 기반 솔루션보다 훨씬 깨끗하고 훨씬 빠릅니다.
이 특별한 경우,re
모듈이 오버킬되었습니다.사용하는 것은 어떨까요?split
(또는rsplit
)의 방법
se='</html>'
z.write(article.split(se)[0]+se)
예를들면,
#!/usr/bin/python
article='''<html>Larala
Ponta Monta
</html>Kurimon
Waff Moff
'''
z=open('out.txt','w')
se='</html>'
z.write(article.split(se)[0]+se)
출력out.txt
~하듯이
<html>Larala
Ponta Monta
</html>
언급URL : https://stackoverflow.com/questions/11475885/python-replace-regex
'programing' 카테고리의 다른 글
업로드하기 전에 JavaScript에서 파일 MIME 유형을 확인하는 방법 (0) | 2022.12.26 |
---|---|
특별한 HTML 엔티티가 포함된 문자열을 디코딩하는 올바른 방법은 무엇입니까? (0) | 2022.12.26 |
JSON 웹 토큰을 무효화하는 중 (0) | 2022.12.06 |
iFrame 내에서 요소 가져오기 (0) | 2022.12.06 |
MySQL Workbench - 쿼리 오류 문제를 진단하는 방법 (0) | 2022.12.06 |