파이썬 정규식 질문합니다.

조회수 375회
“3연패 굴욕 절대 안 돼”…미나미노 앞세운 일본 ‘절치부심’
ㆍ2014 U-19 선수권 한·일전 멀티골사 
ㆍ우샘프턴서 기량 되찾은 <e>에이스(bi_P_153)</e> 
ㆍ해외파 9명 소집해 합숙훈련 돌입25일 열리는 축구 한·일전을 앞두고 일본이 설욕을 벼르고 있다. <e>손흥민(bi_P_60)</e>(<e>토트넘(bi_O_748)</e>)과 <e>황의조(bi_P_843)</e>(<e>보르도(bi_L_447)</e>), <e>황희찬(bi_P_108)</e>(<e>라이프치히(bi_L_216)</e>) 등 유럽파 정예멤버가 빠진 <e>한국(bi_L_117)</e>과 달리 일본은 해외파 9명을 소집해 지난 22일 합숙 훈련에 들어갔다.일본 스포츠매체 ‘스포니치아넥스’는 23일 “2019년 11월 이후 처음으로 유럽파와 국내파가 <e>요코하마(bi_L_155)</e>에 모여 합숙에 돌입했다”며 “이번 일·<e>한전(bi_O_269)</e>에서 패하면 1993년 <e>J리그(bi_E_336)</e> 출범 후 첫 A매치 3연패의 굴욕을 맛보게 된다”고 보도했다. 일본은 2017년 12월 <e>동아시아컵(bi_E_111)</e> E-1 대회에서 1-4 패배에 이어 2019년 12월 같은 대회에서 0-1로 지며 <e>한국(bi_L_117)</e>에 2연패 중이다.일본이 가장 큰 기대를 걸고 있는 선수는 ‘<e>에이스(bi_P_153)</e>’ <e>미나미노 다쿠미(bi_P_209)</e>(26·사진)다. <e>잉글랜드 프리미어리그(bi_E_19)</e>(EPL) <e>리버풀(bi_O_2353)</e>에서 좀처럼 출장 기회를 잡지 못하다가 지난달 사우샘프턴으로 임대된 미나미노는 지난달 20일 <e>첼시(bi_L_417593)</e>전에서 골을 넣는 등 이후 최근 <e>리그(bi_P_1247)</e> 6경기에서 2골을 터뜨렸다. 미나미노는 지난 20일 예정된 <e>FA컵(bi_E_272)</e> 8강전 본머스와의 경기에 출장하지 않고 유럽파 가운데 가장 빠른 21일 입국해 컨디션을 조율했다.스포니치는 그러면서 7년 전 미나미노가 멀티골을 터뜨리며 승리한 한·일전을 소환했다. 이 매체는 “미나미노가 이번에 A매치에서 <e>한국(bi_L_117)</e>과 처음 만나지만 <e>한국(bi_L_117)</e>이 거북하다는 의식은 없다. 2014년 U-19 아시아선수권 1차 리그 <e>한국(bi_L_117)</e>전에서 2골을 넣어 승리해 결승 토너먼트에 일본을 1위로 이끌었다”고 전했다. 당시 <e>한국(bi_L_117)</e>은 <e>김건희(bi_P_1038)</e>가 1골을 터뜨렸으나 미나미노에게 2골을 얻어맞으며 1-2로 졌다.일본은 이번 한·일전에 정예들을 대거 출전시킨다. <e>요시다 마야(bi_P_6770)</e>(33·<e>삼프도리아(bi_O_942)</e>)와 도미야사 다케히로(23·<e>볼로냐(bi_L_2014)</e>) 등 <e>이탈리아 세리에A(bi_E_106)</e> 소속 수비수가 가세했고, 공격 라인에는 독일 슈투트가르트의 주전 미드필더 <e>엔도 와타루(bi_P_2097)</e>(28), <e>오사코 유야(bim_P_6131)</e>(31·<e>베르더 브레멘(im_O_933)</e>)가 포진한다. 일본 대표팀 수비수 <e>사사키 쇼(bi_P_364)</e>(32·<e>산프레체 히로시마(im_OG_1190)</e>)는 ‘사커매거진웹’ 인터뷰에서 “(한·일전은) 평소와 다른 마음가짐으로 임하는 경기다. 각오도 단단히 돼 있다”며 “무슨 <e>일이(iim_RD_2274)</e> 있어도 이기고 싶다”고 말했다.

저는 위와같은 문자열에서 <e></e> 사이에있는 베르더 브레멘(im_O_933) 이런 정보들만 뽑아오고싶습니다. 스페이스 단위로 모두 스플릿해서 ^<e> 이걸로도 해보고 정규식을 뒤져보면서 하다가 너무 어려워서 고수님들의 도움을 구하려고 합니다

  • 크롤링해서 추출한 텍스트 아닌가요? 초보자 2021.8.19 15:08
  • 엑셀로 받은 데이터 입니다 nyw123 2021.8.19 15:53

2 답변

  • 좋아요

    3

    싫어요
    채택 취소하기
    >>> s = '''"3연패 굴욕 절대 안 돼"…미나미노 앞세운 일본 ‘절치부심’
    ... ㆍ2014 U-19 선수권 한·일전 멀티골사
    ... ㆍ우샘프턴서 기량 되찾은 <e>에이스(bi_P_153)</e>
    ... ㆍ해외파 9명 소집해 합숙훈련 돌입25일 열리는 축구 한·일전을 앞두고 일본이 설욕을 벼르고 있다. <e>손흥민(bi_P_60)</e>(<e>토트넘(bi_O_748)</e>)과 <e>황의조(bi_P_843)</e>(<e>보르도(bi_L_447)</e>), <e>황희찬(bi_P_108)</e>(<e>라이프치히(bi_L_216)</e>) 등 유럽파 정예멤버가 빠진 <e>한국(bi_L_117)</e>과 달리 일본은 해외파 9명을 소집해 지난 22일 합숙 훈련에 들어갔다.일본 스포츠매체 ‘스포니치아넥스’는 23일 "2019년 11월 이후 처음으로 유럽파와 국내파가 <e>요코하마(bi_L_155)</e>에 모여 합숙에 돌입했다"며 "이번 일·<e>한전(bi_O_269)</e>에서 패하면 1993년 <e>J리그(bi_E_336)</e> 출범 후 첫 A매치 3연패 의 굴욕을 맛보게 된다"고 보도했다. 일본은 2017년 12월 <e>동아시아컵(bi_E_111)</e> E-1 대회에서 1-4 패배에 이어 2019년 12월 같은 대회에서 0-1로 지며 <e>한국(bi_L_117)</e>에 2연패 중이다.일본이 가장 큰 기대를 걸고 있는 선수는 ‘<e>에이스(bi_P_153)</e>’ <e>미나미노 다쿠미(bi_P_209)</e>(26·사진)다. <e>잉글랜드 프리미어리그(bi_E_19)</e>(EPL) <e>리버풀(bi_O_2353)</e>에서 좀처럼 출장 기회를 잡지 못하다가 지난달 사우샘프턴으로 임대된 미나미노는 지난달 20일 <e>첼시(bi_L_417593)</e> 전에서 골을 넣는 등 이후 최근 <e>리그(bi_P_1247)</e> 6경기에서 2골을 터뜨렸다. 미나미노는 지난 20일 예정된 <e>FA컵(bi_E_272)</e> 8강전 본머스와의 경기에 출장하지 않고 유럽파 가운데 가장 빠른 21일 입국해 컨디션을 조율했다.스포니치는 그러면서 7년 전 미나미노가 멀티골을 터뜨리며 승리한 한·일전을 소환했다. 이 매체는 "미나미노가 이번에 A매치에서 <e>한국(bi_L_117)</e>과 처음 만나지만 <e>한국(bi_L_117)</e>이 거북하다는 의식은 없다. 2014년 U-19 아시아선수권 1차 리그 <e>한국(bi_L_117)</e>전에서 2골을 넣어 승리해 결승 토너먼트에 일본을 1위로 이끌었다"고 전했다. 당시 <e>한국(bi_L_117)</e>은 <e>김건희(bi_P_1038)</e>가 1골을 터뜨렸으나 미나미노에게 2골을 얻어맞으며 1-2로 졌다.일본은 이번 한·일전에 정예들을 대거 출전시킨다. <e>요시다 마야(bi_P_6770)</e>(33·<e>삼프도리아(bi_O_942)</e>)와 도미야사 다케히로(23·<e>볼로냐(bi_L_2014)</e>) 등 <e>이탈리아 세리에A(bi_E_106)</e> 소속 수비수가 가세했고, 공격 라인에는 독일 슈투트가르트의 주전 미드필더 <e>엔도 와타루(bi_P_2097)</e>(28), <e>오사코 유야(bim_P_6131)</e>(31·<e>베르더 브레멘(im_O_933)</e>)가 포진한다. 일본 대표팀 수비수 <e>사사키 쇼(bi_P_364)</e>(32·<e>산프레체 히로시마(im_OG_1190)</e>)는 ‘사커매거진웹’ 인터뷰에서 "(한·일전은) 평소와 다 른 마음가짐으로 임하는 경기다. 각오도 단단히 돼 있다"며 "무슨 <e>일이(iim_RD_2274)</e> 있어도 이기고 싶다"고 말했다.'''
    
    >>> re.findall("<e>(.*?)<\/e>",s)
    ['에이스(bi_P_153)', '손흥민(bi_P_60)', '토트넘(bi_O_748)', '황의조(bi_P_843)', '보르도(bi_L_447)', '황희찬(bi_P_108)', '라이프치히(bi_L_216)', '한국(bi_L_117)', '요코하마(bi_L_155)', '한전(bi_O_269)', 'J리그(bi_E_336)', '동아시아컵(bi_E_111)', '한국(bi_L_117)', '에이스(bi_P_153)', '미나미노 다쿠미(bi_P_209)', '잉글랜드 프리미어리그(bi_E_19)', '리버풀(bi_O_2353)', '첼시(bi_L_417593)', '리그(bi_P_1247)', 'FA컵(bi_E_272)', '한국(bi_L_117)', '한국(bi_L_117)', '한국(bi_L_117)', '한국(bi_L_117)', '김건희(bi_P_1038)', '요시다 마야(bi_P_6770)', '삼프도리아(bi_O_942)', '볼로냐(bi_L_2014)', '이탈리아  세리에A(bi_E_106)', '엔도 와타루(bi_P_2097)', '오사코 유야(bim_P_6131)', '베르더 브레멘(im_O_933)', '사사키 쇼(bi_P_364)', '산프레체 히로시마(im_OG_1190)', '일이(iim_RD_2274)']
    
    • 와우!! 정말 감사합니다 e로 시작하는 걸 찾으려고 ^e여기에만 매달렸는데 이런방법이 있었군요 nyw123 2021.8.19 16:36
  • 다른 고수분들이라면 더 좋은 방법을 알려주시겠지만.. 우선 제 생각을 적어보겠습니다.

    text = '<e>오사코 유야(bim_P_6131)</e>(31·<e>베르더 브레멘(im_O_933)</e>)가 포진한다'
    #print(text.count('<e>'))
    while 1:
        #print(text.count('<e>'))
        #print(text)
        for i in range(len(text)):
            #print(text[i:i+3])
            if text[i:i+3] == '<e>':
                r = text.split(text[i:i+3])[1].split('</e>')[0]
                print(r)
                #print(text.split('</e>')[0])
                text = text.split(r + '</e>')[1]
                #print(text)
                break
        if text.count('<e>') < 1:
            break
    

    이 정도만 해둬도 당장 쓸 정도는 되지 않나 생각합니다.

    • 답변 감사드립니다! nyw123 2021.8.19 16:35

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)