티스토리 뷰

저번 수업에는 앤서블을 이용하여 쿠버네티스 초기 환경을 한 번에 설정한 뒤 오후 시간에 정규표현식 수업을 약간 했다.

 

오늘은 정규표현식 강의를 마칠 것 같다.


리눅스에 있는 계정 정보를 사용하여 정규표현식을 연습해 보자

 

주피터 노트북의 re 모듈을 부르고 변수에 해당 내용을 저장한다.

 

정규표현식 없이 행으로 나누고, :을 기준으로 변수에 나누어 저장한 모습이다.

 

정규표현식을 사용한 모습이다.

 

오히려 길어지긴 했지만 길어지거나 구분자가 :로 동일하지 않다면 윗 코드는 엄청 복잡해졌을 것이다.


문자열 소비가 없는 메타 문자

 

\b 단어 구분자(word boundary)

 

\B == !\b

 

or의 의미로 사용되는 | 메타 문자

 

\A, \B와 ^, $의 차이점

 

그루핑(grouping)

이렇게 중첩 그루핑도 가능하다.

 

((901205)-(1234567))

-------------1--------------

-----2-------  -----3-------

 

재참조된 내용을 찾아보자

 

선언한 내용에서 \1, \2...로 적으면 앞에서 그루핑된 내용이 반복되는 내용을 찾는 정규 표현식이 된다.

 

OR문으로 강제로 참인 상황을 만드려는 SQL문을 찾는 정규표현식

 

이렇게 (\s+)가 그루핑될 줄 모르고 적으면 1, 3번 처럼 그룹 번호를 찾아야 한다.

 

이름을 붙여서 사용하면 리스트가 아닌 사전형 자료형때 처럼 이용이 가능하다.

 

그루핑 된 내용에 이름을 붙여두니 순서에 상관없이 그룹 번호를 찾지 않아도 된다.

 

만약 중첩 그루핑까지 추가됬다고 생각하고 그룹 번호로 변수에 넣는다고 생각해 보자

 

변수에 넣기도 힘들었을 것이다.

 

엑셀 확장자만 찾도록 만들어 보자

 

아닌 것을 찾아버리면 or에선 둘 중 하나가 골라져서 전부 골라진다.

 

전방 탐색을 이용하여 :를 빼고 출력해 보자

 

만약 부정형 전방 탐색을 사용하지 않으면 각 글자마다 불편하게 적어야 할 것이다.

 

문자열 바꾸기(치환하기)

 

그냥 치환만이 아닌 출력에만 사용하여 원하지 않는 정보를 가려서 출력도 가능하다.

문자열 리스트를 정수형으로 바꾸는 법

 

for 문을 돌려서 리스트를 대입해 줘도 되지만

 

맵(매핑)함수를 이용해도 된다.

 

html 파일에서

open() 함수는 HDD에 저장된 파일을 불러오거나 처리된 결과를 HDD에 파일로 저장하는 함수

 

사용법) open('파일명', '모드', 옵션들)

 

파일명: 파일명은 경로를 포함하여 문자열로 작성하고,

open()은 기본적으로 text 파일을 다루기 때문에 확장자는 .txt가 많다.

 

모드

1. r(read): 파일 읽어오기

2. w(write): 파일 내용 쓰기(overwrite)

3. a(append): 파일 내용 쓰기(add)

 

파일을 생성(없으니)

 

작성

 

overwrite

 

입출력 종료

 

방금처럼 적으면 입출력이 지속적이지 않고 파일과의 통신이 열리고 입력한 뒤 바로 닫히는 개념이라

 

file이라는 참조자를 생성하여 힙 영역에 있는 open함수의 객체에 연결을 해줘야 파일이 열린 상태로 유지된다.

 

열린 상태에서 저장 시 닫히면 전부 남아있다.

 

반복문으로도 가능

 

read() 함수

 

readline 함수

 

매개변수를 넣어주면 글자 단위로 읽을 수 있는 것 같다.

 

출력도 반복문을 사용하면 편리하다.

 

파이썬 안에서 read2 객체를 만들고 그 객체를 write 함수를 사용하여 덮어쓰면 내용을 바꿀 수 있다.

 

하지만, 이 작업은 하나를 바꾸려고 파일 전부를 삭제하는 것이기에 자동화 작업이 아니라면 sed 명령어 사용이 

 

유리할 것 같다.

 

sed 명령어 사용한 모습이다.

 

아래 두 sed -i 명령은 같은 결과를 내놓는다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함