unit 43 심사문제 해설 관련 문의
, 박 정현님이 작성※주의사항
Unit 43 심사문제를 풀지 않으신 분은 이 글을 읽지 않는 것을 추천드립니다. (책 관련 해설 등에 관한 질문을 위해 비밀글 작성 옵션이 있으면 좋을 것 같습니다)
(첨부파일 '제목 없음.png' 참고)
빨간 상자 안의 해설을 읽어보시면
[a-zA-Z0-9-_.?=/]+ 와 같이 작성하라고 나와있습니다.
하위경로가 더 "나올 수" 있기 때문에 슬래쉬( / ) 를 넣으라고 합니다.
여기서 의문은 하위경로의 존재가능성을 생각한다면 코드 마지막은
+ 가 아닌 * 가 되어야 하지 않나 싶습니다.
심사문제를 푸는데는 아무 문제가 없지만 다른 예제를 시도해보니 잘못된 출력이 나옵니다.(첨부파일 1.png 참고)
하위 경로가 더 없는 네이버의 도메인을 넣었더니 False가 출력되었습니다.
추가 질문으로
1.png 코드 중
re.compile에 ^를 붙이지 않고 그냥 http[s]* 라고 해도 도메인 분석에는 문제가 없는지 궁금합니다. ^를 붙이지 않아도 match를 통해 http 가 앞에 나오는지 자동으로 검사되기 때문입니다. 혹시 이 방식에 문제가 있을까요?
Re: unit 43 심사문제 해설 관련 문의
, 도장_ 관리자님이 작성작가님 검토를 거쳐서 답변을 등록할 예정입니다.
다만, 작가님 지병으로 건강이 좋지 못하여 늦어지는 점 양해 부탁드립니다.
Re: unit 43 심사문제 해설 관련 문의
, 도장_ 관리자님이 작성작가님의 답변을 전합니다.
문의에 감사합니다.
---
1. 말씀하신대로 하위 경로가 더 나올 수 있으므로 +보다는 *가 더 정확합니다. *로 수정했습니다.
2.
^를 붙여도 되고 붙이지 않아도 됩니다. 다만, 정규표현식은 조금만 복잡해지면 한 눈에 이해하기 어려워지므로 기능이 중복되더라도
조건을 명확하게 작성하는 것이 좋습니다. 특히 정규표현식은 정해진 답이 없어서 같은 형식의 데이터를 처리하더라도 사람에 따라
여러 가지 방식이 나올 수 있습니다.