다음과 같이 매우 큰 문자열을 일치시켜야합니다.
"""
A=...B=...C=...D=...
"""
문자열과 일치시키기 위해 이러한 re 표현식을 사용했습니다.
'''
A=.+?
[^ABCD]+?
C=.+?
'''
re 표현이 매우 길기 때문에에 따라 여러 줄로 나눕니다 PEP8
. 그러나 파이썬은 내 암시 적도 일치 \n
합니다. 즉, 일치하려고합니다.
A=(.+?)\\n[^ABCD]+?\\nC=(.+?)\\n
확실히 내가 원하는 것이 아닙니다. 또한 파이썬도 그 공백과 일치하기 때문에 예쁜 들여 쓰기를 사용할 수 없습니다.
그럼 어떻게 빠져 나갈 수 있을까요? 나는 예쁜 들여 쓰기와 올바른 매칭을 원합니다.
Regex를 만들 때 re.VERBOSE
(라고도 함 re.X
) 플래그를 지정합니다 .
pattern = re.compile('''
A=.+?
[^ABCD]+?
C=.+?
''', re.VERBOSE)
로부터 문서 :
이 플래그를 사용하면 더보기 좋은 정규식을 작성할 수 있습니다. 문자 클래스에 있거나 이스케이프 처리되지 않은 백 슬래시가 앞에 오는 경우를 제외하고 패턴 내의 공백은 무시되며, 행
'#'
에 문자 클래스에 이스케이프 처리되지 않은 백 슬래시가없는 경우를 제외하고 가장 왼쪽'#'
부터 시작하여 끝까지 모든 문자 가 라인은 무시됩니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다