Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python 정규식에서 특수 문자를 이스케이프 처리하는 방법은 무엇입니까?

<시간/> <본문>

정규식은 백슬래시 문자('\')를 사용하여 특수 형식을 나타내거나 특수 문자의 특별한 의미를 호출하지 않고 특수 문자를 사용할 수 있도록 합니다. 이것은 문자열 리터럴에서 같은 목적을 위해 파이썬이 같은 문자를 사용하는 것과 충돌합니다. 예를 들어, 리터럴 백슬래시와 일치시키려면 '\\\\'를 패턴 문자열로 써야 할 수도 있습니다. 정규식은 \\여야 하고 각 백슬래시는 일반 Python 문자열 리터럴 내에서 \\로 표현되어야 하기 때문입니다.

해결책은 정규 표현식 패턴에 Python의 원시 문자열 표기법을 사용하는 것입니다. 백슬래시는 'r' 접두사가 붙은 문자열 리터럴에서 특별한 방식으로 처리되지 않습니다. 따라서 r"\n"은 '\'와 'n'을 포함하는 2자 문자열이고 "\n"은 개행을 포함하는 1자 문자열입니다. 일반적으로 패턴은 이 원시 문자열 표기법을 사용하여 Python 코드로 표현됩니다.