정규표현식

train.xlsx

Untitled

Untitled

pip install openpyxl

Untitled

import openpyxl
import re

regex = re.compile(' [A-Za-z]+\\.')
# 엑셀파일 열기
work_book = openpyxl.load_workbook('train.xlsx')

# 현재 Active Sheet 얻기
work_sheet = work_book.active

# work_sheet.rows는 해당 쉬트의 모든 행을 객체로 가지고 있음
for each_row in work_sheet.rows:
    print (each_row[3].value)
    print (regex.findall(each_row[3].value))    

work_book.close()

' [A-Za-z]+.' --> regular expression 이라고 함

정규식

• 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식

정규 표현식 축약 표현 사용 예
[0-9] \d 숫자를 찾음
[^0-9] \D 숫자가 아닌 것을 찾음(텍스트, 특수 문자, white space(스페이스, 탭, 엔터 등등)를 찾을 때)
[ \t\n\r\f\v] \s white space(스페이스, 탭, 엔터 등등) 문자인 것을 찾음
[^ \t\n\r\f\v] \S white space(스페이스, 탭, 엔터 등등) 문자가 아닌 것을 찾음(텍스트, 특수 문자, 숫자를 찾을 때)
[A-Za-z0-9] \w 문자, 숫자를 찾음
[^A-Za-z0-9] \W 문자, 숫자가 아닌 것을 찾음

Untitled

import re
string = "(Dave)"
re.sub('[^A-Za-z0-9]', '', string)    # 문자, 숫자가 아닌 데이터를 찾아서, '' 로 대체해라(삭제해라)

Untitled

string.replace("(", '').replace(")", '')

정규표현식 확인: https://regexr.com/