나는 다음과 같은 정규 표현식을 테스트했습니다. 사이에 유로화 기호가있는 가격을 인식하도록 패턴이 만들어집니다 (40€50
). 정규 표현식이 python이 아닌 pythex에서 작동하는 이유는 무엇입니까? <a href="http://pythex.org" rel="nofollow noreferrer">http://pythex.org</a>에</p> <pre><code>r"([ds]{1,})b(s?[€]s?)([d]{1,})" </code></pre> <p>그것은 실제로 작동 :
이 스크린 샷을 참조하십시오
regex3 = r"([\d\s]{1,})\b(\s?[€]\s?)([\d]{1,})"
line = "37€00"
pct_re = re.compile(regex3)
print(pct_re.search(line))
을 그리고 None
를 인쇄합니다. 이 패턴에 대해서는 : r"([\d\s]{1,},?[\d]{1,}?)\b(\s?[€])"
, Iit은 Pythex와 Python에서 모두 작동합니다. (이 정규식은 끝에 37.50 유로의 가격을 유로화로 인식합니다). 실제로 "Match + object reference"와 같은 것을 출력하지만 "None"은 출력하지 않습니다 !!
stackoverflow에서 비슷하게 보이는 스레드는 re.match
대신 re.search
대신 일치하는 부분이 처음에 일치하므로이 작업을 수행 한 것입니다.
여기 실수는 바보 같지만 도움을 주시면 감사하겠습니다.
어떤 python 버전을 사용하고 있습니까? –
@ cricket_007 현재 파이썬 2.7 (2.7.13) –
의미론을 사용하고 있지만'{1,}'은 (+)와 동일하지 않습니까? – asongtoruin