2010-01-10 2 views
0

필자는 오래된 펄 스크립트에서이 두 줄을 사용했습니다. 내가 파이썬 동등 물을 쓸 때 valueerror와 같은 모든 종류의 오류가 발생합니다 : 유효하지 않은 \x 이스케이프 및 인코딩에 관한 것들.이 Perl 정규 표현식은 어떻게 호환 가능합니까?

$line =~ s/[^\x{8}-\x{7B}]/ /ig; 
$line =~ s/(Û|²|°|±|É|¹|Í)/ /g; 

파이썬으로 작업하려면 어떻게해야합니까?

답변

1

나는 펄 정규식 너무 큰 아니에요하지만 난 그것을 해결했다고 생각 : 당신이 직접 소스에서 유니 코드 문자를 넣어하려는 경우 인코딩 문제에 대한

invalid_range = re.compile(r'[^\x08-\x7B]', re.I) 
invalid_unicode = re.compile(ur'(Û|²|°|±|É|¹|Í)') 
line = re.sub(invalid_range , '', line) 
line = re.sub(invalid_unicode, '', line) 
+0

감사 – Incognito