• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

("?<=).*(?=)") 활용 정규식 작성법 문의

20.07.26 15:02 작성 조회수 217

0

안녕하세요, 

str_extract 정규식 이용해서  아래코드에서 타이틀만 추출하려고 할 경우  정규식 작성 방법 문의드립니다.

title=\"언론권력이 검찰권력과 손잡을 때 벌어지는 일들\">"    

아마도 title=\"로 시작해서 \">" 사이 값을 추출할 수 있도록 작성해야하는데 특수문자가 섞여있어서 헷갈리네요. 

추가로 알려주신 정규식 이용해서 특정 문자열 추출하는게 초급자 입장에서 다소 어려운 것 같은데 혹시 더 쉽게 추출할 수 있는 방법이 있을까요?

답변 1

답변을 작성해보세요.

0

안녕하세요 이지인님.

이지인님께서 말씀하신것처럼 뽑고자 하는 텍스트 대상에 특수문자 등이 들어가게 되면 헷갈릴수 밖에 없겠죠?

모든 프로그래밍 언어가 마찬가지 이지만, 프로그래밍 언어 내에서 " > /  [ ] ) 와 같은 문자는 기본적으로 문자가 아니라 특수한 기능을 가지고 있습니다. 예를들어 R에서 [ ] 는 요소 index(강의에서는 방이라는 표현을 사용했습니다) 에 접근하는데에 쓰이죠

그리서 저 예제를 보면

title=\"언론권력이 검찰권력과 손잡을 때 벌어지는 일들\">"      

맨 뒤에 ">" 문자가 있는데 이를 그냥 R에서 사용하게 되면 특수 기능을 가지는 문자로 인식을 하게 됩니다.

그래서 최대한 이러한 문자를 피해서 작업해주시는게 좋습니다.

아래와 같은 코드를 이용해보시면 어떨까 싶습니다.

str_sub(str_extract(b2,"(?<=title=).*(?=>)"),2,end=-2)