re.UNICODE
를 지정하거나, 패턴에 (?u)
를 넣는다. (?u)pattern
# 첫번째 방법 p = re.compile(unicode(r'패턴문자열','utf-8'), re.UNICODE) # 혹은 p = re.compile(u'패턴문자열', 'utf-8'), re.UNICODE) # r''은 RegEx용 escape을 덜해도 되는 문자열방식이다. r''에서는 역슬래시가 필요한 곳에 역슬래시를 한 번만 쓰면 되지만, r''이 아니면 역슬래시를 두 번씩 사용해야 한다. p.match(u'한글 들어간 문자열등등...')
파이썬에서 콘솔 혹은 파이프로 출력할 경우의 문자셋을 지정하려면 PYTHONIOENCODING 환경 변수를 미리 설정해둬야 한다.
export PYTHONIOENCODING="utf_8"
이 외에 명시적으로 인코딩을 지정하는 방법은 Python Print Fails 참조.