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

대문자로 시작하는 단어 사이에 공백을 넣는 Python의 정규식


여기서 해결하려는 문제는 CamelCase를 단어를 분리하도록 변환하는 것입니다. 주어진 문자열에서 대문자의 모든 발생을 찾고 그 앞에 공백을 넣어 정규식을 사용하여 직접 해결할 수 있습니다. re 모듈의 하위 메소드를 사용할 수 있습니다.

예를 들어, 입력 문자열의 경우 -

AReallyLongVariableNameInJava

우리는 출력을 얻어야 합니다 -

A Really Long Variable Name In Java

"[A-Z]" 정규식을 사용하여 모든 대문자를 찾은 다음 공백과 해당 문자로 다시 바꿀 수 있습니다. 다음과 같이 re 패키지를 사용하여 구현할 수 있습니다. -

예시

import re

# Find and capture all capital letters in a group and make that replacement
# using the \1 preceded by a space. Strip the string to remove preceding
# space before first letter.
separated_str = re.sub("([A-Z])", " \\1", "AReallyLongVariableNameInJava").strip()
print(separated_str)

출력

이것은 출력을 줄 것입니다 -

A Really Long Variable Name In Java