반응형
파이썬 정규식 일치를 통해 반복
이것은 내가 겪는 것보다 쉬워야합니다. 내 문제는 다음과 같은 문자열을 돌리는 것입니다.
ABC12DEF3G56HIJ7
으로
12 * ABC
3 * DEF
56 * G
7 * HIJ
그리고 평생 동안 REGEX 매칭을 사용하여 올바른 루프 세트를 설계 할 수 없습니다. 문제의 핵심은 코드가 완전히 일반화 [A-Z]
되어야한다는 [0-9]
것입니다. 조각이 얼마나 길거나 조각이 얼마나 길지 짐작할 수 없기 때문 입니다.
도움을 주셔서 감사합니다!
파이썬 re.findall
은 당신을 위해 작동합니다.
import re
s = "ABC12DEF3G56HIJ7"
pattern = re.compile(r'([A-Z]+)([0-9]+)')
for (letters, numbers) in re.findall(pattern, s):
print(numbers, '*', letters)
데이터 세트가 큰 경우 re.finditer 를 사용하는 것이 좋습니다 .
import re
s = "ABC12DEF3G56HIJ7"
pattern = re.compile(r'([A-Z]+)([0-9]+)')
for m in re.finditer(pattern, s):
print m.group(2), '*', m.group(1)
참고 URL : https://stackoverflow.com/questions/12870178/looping-through-python-regex-matches
반응형
'IT박스' 카테고리의 다른 글
자바 스크립트에서 내 Json에서 "를 제거하는 방법? (0) | 2020.12.07 |
---|---|
두 클래스가 하나의 div에 할당되면 클래스가 무시됩니다. (0) | 2020.12.07 |
CSS를 사용하여 브라우저 크기로 이미지 크기를 자동으로 조정 (0) | 2020.12.07 |
특정 파일에서 pep8 오류를 비활성화하는 방법은 무엇입니까? (0) | 2020.12.07 |
Firebase 연결 명확화 (0) | 2020.12.07 |