문자열에서 제한된 패턴을 검사하고 추출합니다.
re 모듈은 문자열 패턴 검색, 추출, 치환을 제공합니다. fullmatch는 전체 문자열, search는 일부 위치, findall은 모든 일치를 찾습니다. raw 문자열 r''을 사용하면 역슬래시를 읽기 쉽게 표현할 수 있습니다.
패턴 ^[a-z][a-z0-9_]{2,15}$는 소문자로 시작하고 전체 길이가 3~16자인 이름만 통과시켜, 숫자로 시작하는 2fast와 두 글자인 ab가 False가 됩니다. 아래쪽 패턴은 숫자 부분을 괄호 그룹으로 감쌌기 때문에 search 결과의 group(1)이 17이고, findall은 그룹 값만 모은 ['17', '24']를 돌려줍니다.
^와 $, 문자 클래스, 수량자를 작은 단위로 익히고 복잡한 형식은 정규식 하나보다 파서나 여러 검증 단계로 나눕니다.
사용자 입력으로 정규식을 직접 만들거나 catastrophic backtracking 가능한 패턴을 쓰면 CPU를 오래 점유할 수 있으므로 패턴을 통제합니다.
이메일 형식을 정규식 하나로 완벽하게 판정하려 하지 말고 실제 확인 메일 같은 검증 절차를 함께 사용하세요.
직접 바꿔보세요허용되는 사용자 이름 길이를 3~12자로 바꾸고 여러 값을 검사하세요.
실행 버튼을 누르면 결과가 여기에 표시됩니다.