Hugo van Kemenade: re.match()의 소프트 폐기
re.match()은 문자열의 맨 앞에서부터 패턴을 일치시키려고 시도합니다. 패턴이 시작 부분에서 발견되면 매치 객체를 반환하고, 그렇지 않으면 None을 반환합니다. re.match("pi", "pi")와 re.match("pi", "pie")는 모두 "pi"가 이 문자열들의 시작 부분에 있기 때문에 매치를 반환합니다. 하지만 re.match("pi", "api")와 re.match("pi", "magpie")는 "pi"가 문자열의 시작 부분에 나타나지 않기 때문에 매치되지 않습니다.대조적으로, re.search()는 전체 문자열을 스캔하고 패턴이 발견된 첫 번째 위치를 반환하며, 그 위치에 상관없이 작동합니다. re.fullmatch()는 전체 문자열이 처음부터 끝까지 패턴과 정확히 일치해야 합니다. Python 3.15는 re.match()의 별칭으로 re.prefixmatch()를 도입했으며, 이름으로 더 명확한 의미를 전달하는 것을 목표로 합니다. re.match()는 Python 3.15에서 소프트 폐기(soft-deprecated)되었으며, 이는 새로운 코드에서는 사용하지 않아야 하지만 기존 코드에서는 안전하게 사용할 수 있음을 의미합니다. 시작 부분에서만 일치시키려는 의도라면 새로운 코드에서는 re.prefixmatch()를 선호해야 합니다.