세분화에서 RegEx 매칭 사용
정규식(Regex) 일치란 무엇인가요?
정규식 매칭을 사용하면 정확한 값이 아니라 텍스트 패턴을 기준으로 프로필을 필터링할 수 있어요. 이 기능은 특정 도메인의 이메일 주소나 특정 형식의 전화번호처럼, 특정 형식을 따르는 프로필을 찾는 데 유용해요.
⚠️ 중요: 정규식은 항상 시작부터 끝까지 전체 값을 매칭해요.
정규식 사용 방법
세그먼트를 만들 때 텍스트 속성에 2개의 정규식 연산자를 사용할 수 있어요:
- 정규식과 일치 - 값이 정규식과 일치하는 프로필을 포함해요
- 정규식과 일치하지 않음 - 값이 정규식과 일치하지 않는 프로필을 포함해요.
다음 세그먼트 조건에서 정규식을 사용하세요:
- 개인에 대한 속성 (사용자 정의 객체 포함). 객체 데이터를 사용하려면 먼저 사용자 정의 객체를 만드세요. 세그먼트에서 사용자 정의 객체를 사용하는 방법을 알아보세요.


- 누군가가 수행한(또는 수행하지 않은) 작업 및 누군가가 특정 순서대로 수행한(또는 수행하지 않은) 단계의 필터
이벤트 퍼널은 Personalization 및 Klaviyo 고급 데이터 플랫폼에 포함되어 있어요. 세분화에서 이벤트 퍼널을 사용하는 방법을 알아보세요.

정규식 필터 적용
- 새 세그먼트의 세그먼트 빌더를 열거나, 기존 세그먼트를 열고 정의 편집을 클릭해 주세요.
- 위 조건 중 하나를 선택하고, 일치시킬 속성을 선택해 주세요. 이벤트 조건의 경우, 이벤트를 선택한 다음 필터 아이콘을 클릭해 이벤트 속성을 선택해 주세요.
- 텍스트 속성을 사용해요. 데이터 유형을 편집할 수 있으면 텍스트를 선택해요.
- regex와 일치 또는 regex와 일치하지 않음을 선택하고 패턴을 입력해 주세요.
- 새 세그먼트를 만들려면 세그먼트 만들기를 클릭하고, 기존 세그먼트의 변경 사항을 저장하려면 세그먼트 업데이트를 클릭해 주세요.
정규식 기초
일치하는 문자
- 문자 및 숫자 - 일반적으로 입력: hello는 "hello"와 일치해요
- 모든 숫자 - \d를 사용해 0-9의 모든 숫자와 일치시킵니다
- 모든 문자 - 소문자는 [a-z], 대문자는 [A-Z], 둘 다는 [a-zA-Z]를 사용하세요.
- 둘 중 하나 - 옵션을 일치시키려면 |를 사용하세요. gmail|yahoo는 "gmail" 또는 "yahoo" 중 하나와 일치해요.
- 무엇이든 - .*를 사용해 모든 문자와 일치
특수 문자
다음 항목을 문자 그대로 일치시키려면 앞에 백슬래시 \를 추가해 주세요:
- 마침표: \\.는 마침표에 매칭돼요.
- 플러스 기호: \+는 플러스 기호와 일치해요
- 괄호: \( 및 \) 는 괄호와 일치해요
반복 패턴
- {5} - 정확히 5번(예: \d{5}는 숫자 5자리에 일치해요)
- {2,4} - 2~4배
- ? - 선택 사항(0회 또는 1회)
참고: {n}, {n,m} 또는 {n,}의 반복 범위는 1,000을 초과할 수 없어요. 이는 * 또는 +를 1,000회 반복으로 제한하지 않아요.
일반적인 예시
이메일 주소
- 특정 도메인:
- .*@example\.com
- 일치: john@example.com, support@example.com
- 여러 도메인:
- .*@(gmail|yahoo|hotmail)\.com
- 일치: user@gmail.com, user@yahoo.com, user@hotmail.com
- 모든 .com 이메일:
- .*@.*\.com
전화번호
- 10자리 미국 번호
- \d{10}
- 일치: 5551234567
- 괄호로 형식 지정됨:
- \(\d{3}\) \d{3}-\d{4}
- 일치하는 항목: (555) 123-4567
우편 번호
- 5자리 ZIP:
- \d{5}
- 일치: 12,345
- ZIP+4:
- \d{5}-\d{4}
- 일치 항목: 12345-6789
고급 참고 자료: 구현에서는 Google RE2를 표준으로 사용해요. 여기에서 자세히 알아보세요.
정규식 제한
제한 | 값 | 예시 |
정규식 길이 | 최대 1,000자 | - |
정규식 줄 | 최대 100줄 | - |
카운트된 반복 범위 | 최대 한도: 1,000 | \d{1000} 허용됨 |
최상위 수준 | 구분자 | 구분자 최대 5개(대안 6개) | a|b|c|d|e|f는 허용되며, a|b|c|d|e|f|g는 제한을 초과합니다 |
또한, 현재는 다음 기능이 지원되지 않아요.
기능 | 예시 |
룩어헤드/룩비하인드 | (?=...), (?!...), (?<=...), (?<!...) |
역참조 | \1, \2, (\w+)\s+\1 |
유니코드 이스케이프 | \uXXXX, \u00A0 |
중첩 수량자 | (a+)+, (x*)*, (a{2,5})+ |
성공을 위한 팁
1. 정규식이 전체 값과 일치합니다.
정규식은 값의 일부가 아니라 전체 값을 설명해야 해요.
잘못된 예: gmail\.com (텍스트 "gmail.com"만 일치)
오른쪽: .*@gmail\.com (john@gmail.com처럼 전체 이메일과 일치)
2. 리터럴 마침표를 이스케이프하세요
.com을 일치시킬 때는 .net, 등은 백슬래시를 사용해 \.com처럼 작성해 주세요.
잘못됨: .*@gmail.com(이스케이프 처리되지 않은 마침표는 모든 문자를 매칭해요)
오른쪽: .*@gmail\\.com (john@gmail.com 같은 이메일에서 문자 그대로의 마침표(.)와 일치)
3. .* 사용 "무엇이든"에 대해
.*로 모든 문자를 매칭
- .*@company\.com - company.com의 모든 이메일
- \+.* - +로 시작하는 모든 항목
- .*urgent.* - "urgent"가 포함된 텍스트
4. 간단하게 시작한 다음 다듬어 보세요
기본적인 정규식으로 시작한 다음, 세부 사항을 조금씩 추가해 주세요.
- 예: .*@gmail\.com → [a-z]+\.[a-z]+@gmail\.com
가능하면 복잡한 로직을 여러 개의 간단한 조건으로 분할해 보세요. 아래 예시처럼, 프로필이 두 조건을 모두 충족해야 할 때는 조건을 AND로 연결해 주세요.
- "캘리포니아에서 발송된 Gmail 또는 Yahoo 이메일"의 예:
- 필터 1: 이메일이 정규식 .*@(gmail|yahoo)\.com과(와) 일치함
- 필터 2: 주가 캘리포니아와 같음
5. RegEx는 기본적으로 대소문자를 구분해요.
문을 대/소문자를 구분하지 않도록 하려면 접두사로 (?i)을(를) 추가할 수 있어요.
- 제품이 (?i)^iphone$와(과) 일치함
정규식 vs. 표준 연산자: 언제 사용해야 하나요
특정 형식이나 패턴을 일치시켜야 할 때는 정규식을 사용하세요. 더 간단한 요구 사항을 위해서는 대신 표준 연산자를 사용하는 것이 좋습니다.
- 포함 - 텍스트가 어디에나 표시됨
- -로 시작함: 시작 부분과 일치
- -로 끝남 - 끝부분과 일치
- 같음-정확히 일치