티스토리 뷰

1. 개요
구글 스프레드시트의 쿼리 기능은 데이터를 검색하고 조작하는 강력한 도구 중 하나입니다. 이 문서에서는 구글 쿼리의 정규식 사용에 대한 개요와 다양한 사용 예시를 제공하여 데이터 분석 및 관리 작업에서 정규식을 활용하는 방법을 설명하겠습니다.
2. 구글 쿼리 정규식 구문
구글 쿼리에서 정규식을 사용하려면 MATCHES
함수를 활용합니다. 다음은 MATCHES
함수의 구문입니다:
=QUERY(data, "SELECT * WHERE column_name MATCHES 'regex_pattern'")
data
: 검색 및 조작할 데이터 범위입니다.column_name
: 정규식을 적용할 열의 이름입니다.'regex_pattern'
: 적용할 정규식 패턴입니다. 작은 따옴표로 묶어야 합니다.
3. 구글 쿼리 정규식 사용 예시 20가지
1) 사용 예시 1 - 이메일 주소 필터링
이메일 주소에서 Gmail 도메인의 이메일만 추출합니다.
=QUERY(A1:B10, "SELECT * WHERE B MATCHES '.*@gmail\.com'")
2) 사용 예시 2 - 숫자 형식 필터링
특정 숫자 형식을 가진 데이터를 추출합니다.
=QUERY(A1:B10, "SELECT * WHERE A MATCHES '^\d{3}-\d{2}-\d{4}$'")
3) 사용 예시 3 - URL 추출
텍스트에서 URL을 추출합니다.
=QUERY(A1:A10, "SELECT * WHERE A MATCHES 'https?://[^\s/$.?#].[^\s]*'")
4) 사용 예시 4 - 전화번호 추출
전화번호 형식의 데이터를 추출합니다.
=QUERY(A1:B10, "SELECT * WHERE B MATCHES '(\d{3})-(\d{3})-(\d{4})'")
5) 사용 예시 5 - 단어 추출
특정 단어가 포함된 데이터를 추출합니다.
=QUERY(A1:A10, "SELECT * WHERE A MATCHES 'apple|banana'")
6) 사용 예시 6 - 이메일 도메인 추출
이메일 주소에서 도메인 부분을 추출합니다.
=QUERY(A1:B10, "SELECT REGEXEXTRACT(B, '@(.+)$')")
7) 사용 예시 7 - 주민등록번호 필터링
주민등록번호 형식의 데이터를 추출합니다.
=QUERY(A1:B10, "SELECT * WHERE A MATCHES '\d{6}-\d{7}'")
8) 사용 예시 8 - 특정 문자열 패턴 필터링
특정 문자열 패턴을 가진 데이터를 추출합니다.
=QUERY(A1:A10, "SELECT * WHERE A MATCHES 'Pattern\d{3}'")
9) 사용 예시 9 - 이메일 주소에서 도메인 제외
이메일 주소에서 도메인을 제외한 부분을 추출합니다.
=QUERY(A1:B10, "SELECT REGEXREPLACE(B, '@(.+)$', '')")
10) 사용 예시 10 - 특정 단어 개수 세기
특정 단어가 얼마나 많이 나오는지 세어봅니다.
=ARRAYFORMULA(LEN(REGEXREPLACE(A1:A10, "[^word]+", "")))
11) 사용 예시 11 - 전화번호 형식 통일
다양한 전화번호 형식을 일관된 형식으로 변경합니다.
=ARRAYFORMULA(REGEXREPLACE(A1:A10, "(\d{3})-(\d{3})-(\d{4})", "($1) $2-$3"))
12) 사용 예시 12 - 이메일 주소에서 사용자 이름 추출
이메일 주소에서 사용자 이름을 추출합니다.
=ARRAYFORMULA(REGEXEXTRACT(B1:B10, '(.+)@'))
13) 사용 예시 13 - HTML 태그 제거
HTML 태그를 제거하고 텍스트만 추출합니다.
=ARRAYFORMULA(REGEXREPLACE(A1:A10, "<[^>]+>", ""))
14) 사용 예시 14 - 특정 문자열이 포함된 행 필터링
특정 문자열이 행에 포함된 경우 해당 행을 추출합니다.
=QUERY(A1:B10, "SELECT * WHERE A MATCHES '.*keyword.*'")
15) 사용 예시 15 - 특정 문자열로 시작하는 행 필터링
특정 문자열로 시작하는 행을 추출합니다.
=QUERY(A1:B10, "SELECT * WHERE A MATCHES '^StartsWith'")
16) 사용 예시 16 - 특정 문자열로 끝나는 행 필터링
특정 문자열로 끝나는 행을 추출합니다.
=QUERY(A1:B10, "SELECT * WHERE A MATCHES 'EndsWith$'")
17) 사용 예시 17 - 이메일 주소 검증
올바른 이메일 주소 형식을 가진 행을 추출합니다.
=QUERY(A1:B10, "SELECT * WHERE B MATCHES '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$'")
18) 사용 예시 18 - 특정 길이의 문자열 필터링
특정 길이의 문자열을 가진 행을 추출합니다.
=QUERY(A1:B10, "SELECT * WHERE LEN(A) = 5")
19) 사용 예시 19 - 숫자와 문자열 혼합 필터링
숫자와 문자열
을 혼합한 데이터를 추출합니다.
=QUERY(A1:B10, "SELECT * WHERE A MATCHES '[0-9]' AND A MATCHES '[a-zA-Z]'")
20) 사용 예시 20 - 대소문자 구분 없이 필터링
대소문자를 구분하지 않고 데이터를 추출합니다.
=QUERY(A1:B10, "SELECT * WHERE LOWER(A) MATCHES 'pattern'")
이러한 예시를 참고하여 구글 스프레드시트에서 쿼리 기능을 사용하여 정규식을 활용할 수 있습니다. 정확한 패턴을 사용하여 데이터를 필터링하고 원하는 정보를 추출하십시오.