시작하기무료로 시작하기

grepl & grep (2)

캐럿 기호 ^와 달러 기호 $를 사용하면 각각 문자열의 시작과 끝에 위치한 내용을 매칭할 수 있습니다. 이를 활용하면 이메일 목록에서 ".edu" 주소만 올바르게 매칭하는 패턴에 한 걸음 더 가까워집니다. 여기에 패턴을 더욱 정교하게 만들기 위해 다음 요소들을 추가할 수 있습니다:

  • @: 유효한 이메일에는 반드시 골뱅이 기호가 포함되어야 합니다.
  • .*: 임의의 문자(.)가 0번 이상(*) 반복되는 것을 매칭합니다. 점과 별표는 모두 메타 문자입니다. 이를 사용해 골뱅이 기호와 ".edu" 사이의 임의 문자를 매칭할 수 있습니다.
  • \\.edu$: 문자열 끝에 위치한 ".edu" 부분을 매칭합니다. \\ 부분은 점을 이스케이프 처리하여, R이 .을 실제 문자로 인식하도록 합니다.

이 연습은 강의의 일부입니다

중급 R

강의 보기

연습 안내

  • 더 발전된 정규 표현식을 사용해 grepl()로 논리 벡터를 반환하세요. 결과를 그대로 출력하면 됩니다.
  • grep()으로 같은 작업을 수행해 인덱스 벡터를 만드세요. 결과를 변수 hits에 저장하세요.
  • emails[hits]를 다시 사용해 emails 벡터를 서브셋으로 추출하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# The emails vector has already been defined for you
emails <- c("[email protected]", "[email protected]", "[email protected]",
            "invalid.edu", "[email protected]", "[email protected]")

# Use grepl() to match for .edu addresses more robustly


# Use grep() to match for .edu addresses more robustly, save result to hits


# Subset emails using hits
코드 편집 및 실행