6

내가, 내가 지금은 유니 코드 문자열에 대한 같은 일을 할매칭 대소 문자를 구분 유니 코드 문자열

re.compile(r"[a-z][A-Z]") 

같은 일을 할 수있는 대문자 다음에 소문자와 일치한다고 가정 , 즉 'aÅ'또는 'yÜ'과 같은 것을 찾으십시오.

re.compile(r"[a-z][A-Z]", re.UNICODE) 

을 시도하지만 작동하지 않습니다.

실마리가 있습니까?

답변

6

현재 구현은 \p{Lu}\p{Ll}과 같은 유니 코드 속성 바로 가기를 지원하지 않기 때문에 파이썬 정규식과는 관련이 없습니다.

[A-Za-z] 물론 유니 코드 옵션의 설정 여부에 관계없이 ASCII 문자 만 일치합니다.

그래서, 당신이 중 하나가 (문자열을 반복하고 문자에 char.islower()/char.isupper()을) 또는 모든 유니 코드를 지정 프로그래밍을 할 필요가 re 모듈이 업데이트됩니다 (또는 개발에 현재 regex package 설치)까지 수작업으로 포인트를 잡으려고 노력할 가치가 없습니다.

+0

유용했습니다. 덴마크 문자 만 다루면됩니다. 그래서 'æøå'와 'ÆØÅ'을 추가하는 것이 좋습니다. – repoman

관련 문제