2021. 2. 9. 09:16 devel/etc
파이썬 정규표현식 특정 문자 포함, 특정 문자 제외
급한 분들을 위해 정답부터 일단 작성
예시: 파일들이 여러개 있는데 그 중에서 wind라는 글자가 들어가지만 md5라는 글자가 들어가지 않는 파일 목록을 가져오고 싶다.
import re
strings = ('windFix.bin', 'windFix.bin.md5', 'windFix2.bin', 'ccccddd.cfg')
p = re.compile('wind.+[^md5]$')
for i in strings:
m = p.search(i)
if m:
print(m.group(0))
주목할만한 점
1. ^로 제외하고 싶은 단어를 넣음
2. $로 문자열 끝을 지정
그냥 제외만 하고 싶은데요?
'^((?!md5).)*$'
열라 복잡하네
여기서 테스트 가능하다 - https://www.regextester.com/15
기타 참고 - 파일목록 가져오기
import glob
path = 'c:\\fw\\.......'
fileList = glob.glob(path)
for i in fileList:
print(i)
#m = p.search(i)
.....생략
기타 참고 2
ooo 혹은 xxx는 필수로 들어가고 zzz는 없어야 한다면?
('wind.+[ooo|xxx][^zzz]$')
'devel > etc' 카테고리의 다른 글
텐키리스 키보드 사용 짧은 후기(개발자) (0) | 2022.01.09 |
---|---|
윈도우에서 배치파일, makefile로 빌드 시스템 구축하기 (0) | 2021.02.16 |
ST의 STM32F4 시리즈와 ATMEL SAMV71 써본 후기 (1) | 2017.09.29 |
4차 산업 우리나라가 준비해야 할 많은 것들 (0) | 2017.04.03 |
perror - Bad file descriptor (0) | 2017.03.30 |