1
오늘 내 regex-fu는 약하다. 문자열 형식의 그룹을 다음과 같은 형식으로 5 부분으로 캡처하려고합니다.정규식 그룹으로 분할
substring delimiter substring number(space) substring
단어 경계를 사용해 보았지만 성공하지 못했습니다. . 그것을 얻을 수 있기 때문에
import re
s = "FOREVER - Alabaster Cuttlefish - 01 This Style Is Cheese"
m = re.compile("(.*)(\s-\s)(\d{1,3}\s)(.*)")
g = m.match(s)
if g:
print m.match(s).group(1) # FOREVER
print m.match(s).group(2) # -
print m.match(s).group(3) # Alabaster Cuttlefish
print m.match(s).group(4) # 01
# fail
# print m.match(s).group(5) # This Style Is Cheese
그룹 5가 존재하지 않습니다 내가 * 사용에 의존 한 (내가 알고, 탐욕과 게으름) 여기에 모든
에서 작동하지 않는 것보다 조금 더있는 내가 가진 무엇 첫 번째 그룹에서 캡처합니다. 그러므로 나는 당혹 스럽다.