본문 바로가기
Python

Python - 자주 사용되는 IP, SHA256, SHA1, MD5, URL - Regex 패턴

by 올엠 2022. 7. 14.
반응형

개발 하다보면, Regex를 이용해서 패턴 검증을 해야하는 상황이 자주 발생한다. 특히 특정 타입의 문자를 인식할 수 있도록 하는 작업은 종종 있는 일이라고 할 수 있다.

그래서 개발하면서 사용하던 것 중에 가장 일반적인 IIP, SHA256, SHA1, MD5, URL에 대해서 정리해 본다.

#아이피
ip_regex = r"^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$"

#SHA256
sha256_regex = r"[A-Fa-f0-9]{64}"

#SHA1
sha1_regex = r"[A-Fa-f0-9]{40}"

#MD5
md5_regex = r"\b(?!^[\d]*$)(?!^[a-fA-F]*$)([a-f\d]{32}|[A-F\d]{32})\b"

#URL
url_pattern = "^https?:\\/\\/(?:www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b(?:[-a-zA-Z0-9()@:%_\\+.~#?&\\/=]*)$"

#URL
url_pattern_none_http = "^[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b(?:[-a-zA-Z0-9()@:%_\\+.~#?&\\/=]*)$"

아래 코드는 IP 가 맞는지를 확인하는 코드이다.

import re

ip_regex = r"^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$"

#사용 예
item = '127.0.0.1'

if bool(re.match(ip_regex, item)):
    return True
반응형

태그

, , , , , ,

댓글0