반응형
python re.sub 그룹: \number 뒤의 숫자
교환 방법foobar와 함께foo123bar?
이것은 동작하지 않습니다.
>>> re.sub(r'(foo)', r'\1123', 'foobar')
'J3bar'
이 방법은 다음과 같습니다.
>>> re.sub(r'(foo)', r'\1hi', 'foobar')
'foohibar'
이런 일이 있을 때 흔히 있는 문제인 것 같아요.\number어떻게 대처해야 하는지 힌트 주실 분?
답은 다음과 같습니다.
re.sub(r'(foo)', r'\g<1>123', 'foobar')
관련 문서 발췌:
위에서 설명한 문자 이스케이프 및 백레퍼런스와 더불어 \g는 (?P...) 구문에 의해 정의된 이름이라는 그룹에 의해 일치하는 서브스트링을 사용합니다.\g는 대응하는 그룹번호를 사용합니다.따라서 \g<2>는 \2와 동일하지만 \g<2>0과 같은 치환에서는 애매하지 않습니다.\20은 그룹 2에 대한 참조가 아니라 그룹 20에 대한 참조로 해석되며 문자 '0'이 이어집니다.back reference \g < 0 >는 RE와 일치하는 서브스트링 전체를 대체합니다.
언급URL : https://stackoverflow.com/questions/5984633/python-re-sub-group-number-after-number
반응형
'programing' 카테고리의 다른 글
| PHP 시스템의 로컬 IP를 가져오는 방법 (0) | 2022.09.21 |
|---|---|
| HttpURL 접속 타임아웃 설정 (0) | 2022.09.21 |
| nodejsmysql 오류: Connection lost 서버가 연결을 닫았습니다. (0) | 2022.09.20 |
| PHP는 속성이 개체 또는 클래스에 있는지 확인합니다. (0) | 2022.09.20 |
| 가입 시 특정 사용자에 대한 문서를 표시하는 SQL 조회 (0) | 2022.09.20 |