Python 문서에 따름
Python에는 현재 scanf()와 동일한 기능이 없습니다. 정규식은 일반적으로 scanf() 형식 문자열보다 더 강력하지만 더 장황합니다. 아래 표는 scanf() 형식 토큰과 정규 표현식 사이에 어느 정도 동등한 매핑을 제공합니다.
scanf() 토큰 정규식
%c | . |
%5c | .{5} |
%d | [-+]?\d+ |
%e, %E, %f, %g | [-+]?(\d+(\.\d*)?|\.\d+)([eE][-+]?\d+)? |
%i | [-+]?(0[xX][\dA-Fa-f]+|0[0-7]*|\d+) |
%o | [-+]?[0-7]+ |
%s | \S+ |
%u | \d+ |
%x, %X | [-+]?(0[xX])?[\dA-Fa-f]+ |
다음과 같은 문자열에서 파일 이름과 숫자를 추출하려면
/usr/sbin/sendmail - 0 errors, 4 warnings
다음과 같은 scanf() 형식을 사용합니다.
%s - %d errors, %d warnings
이에 상응하는 정규식은
(\S+) - (\d+) errors, (\d+) warnings