저는 파이썬의 새로운 모듈을 처음 접했지만 파일의 버전 번호를 얻기 위해 정규 표현식을 작성하려고했습니다. 대부분의 경우이 조각은 작동하는 것 같다 :정규 표현식을 이해하는 데 어려움이있는 경우, 파이썬
test = "filename.ver3_576.exr"
print(re.search("(?!(v|ver|version|vers))\d+", test.lower()).group())
을하지만 조금 테스트 문자열을 변경하는 경우, 그것은 나에게 내가 기대하는 결과를 제공하지 않습니다 : 나는 분명히 뭔가 잘못하고있는 중이 야
test2 = "filename.ver_3_576.exr" # expects None, because of the underscore, gets 3
test3 = "filenameVe2_version201_1001.exr" # expects 201, gets2, "ve"(exactly) is not something I want to search for
을 여기에 있지만 그게 무엇인지 파악하는 데 어려움이 있습니다. 귀하의 코멘트에 대답하기 위해
어떤 도움도 대단히 감사하겠습니다, 환호
'(?! ...)'는 '...'이 다음과 일치하지 않는다는 것에주의하십시오. 귀하의 경우've'는'... '과 일치하지 않으므로'2'가 매치됩니다. – Bakuriu
멋지다 ... 그렇다면 여전히 뒤를 사용하고 싶다면 어떤 표현을 권하고 싶습니까? 건배 – iGwok
'?!'는 ** 보이지 않는 **입니다. '? <='와'? Bakuriu