Python Challenge 3의 url은 다음과 같다.
Python challenge 3 : http://www.pythonchallenge.com/pc/def/equality.html
구성
페이지 번역은 다음과 같다.
정확하게 세 개의 큰 보디가드를 양옆에 둔 하나의 작은 문자를 찾으시오
또다시 페이지 주석을 보자
또다시 많은 문자열들이 보인다. 설루션대로 문제의 풀이를 위해서는 정규표현식의 힘을 빌려야 될 거 같다.
정규표현식이 무엇인지 모르는 사람은 아래를, Python에서 정규표현식 사용법은 그 아래를 참고하고 오도록 하자
2021.04.17 - [정보보안-이론] - 정규표현식에 대하여
2021.04.19 - [개발/Python] - [Python] - 모듈탐구 re - [^정규표현식$?]
해결 아이디어
이전문제와 동일하게 문자열은 3.dat에 저장하였으나, 개행 변환은 하지 않았다. 이번에는 개행 문자의 유무가 문제풀이에 영향이 갈 거 같았다. re모델을 통해 작성한 탐색용 정규표현식은 [A-Z]{3}[a-z]{1}[A-Z]{3}이다.
import re
if __name__=="__main__" :
with open("3.dat","r") as f:
data = f.read()
answer = re.findall("[a-z][A-Z]{3}[a-z][A-Z]{3}[a-z]",data)
for i in range(len(answer)) :
print(answer[i][4],end="")
출력은 다음과 같았다.
>>>
linkedlist
찾았다.
Answer Url : http://www.pythonchallenge.com/pc/def/linkedlist.html?
힝 속았지! 페이지는 php에 있다고 한다 다음부터는 정적인 스크립트는 안쓸생각인가 보다
Answer Url : http://www.pythonchallenge.com/pc/def/linkedlist.php
'Python > Python Challenge' 카테고리의 다른 글
[Python Challenge 5] 삐끌 (0) | 2021.05.16 |
---|---|
[Python Challenge 4] 무한으로 즐겨요 requests (0) | 2021.05.16 |
[Python Challenge 2] 책책책 책을 읽읍시다. (0) | 2021.05.16 |
[Python Challenge 1] 문자열 변환 (0) | 2021.05.15 |
[Python Challenge 0] 2의 38제곱은? (0) | 2021.05.15 |