[코딩테스트/ Python] 시간을 단축시켜주는 정규 표현식/프로그래머스 신규 아이디 추천

2023. 6. 11. 22:26·Algorithm

코딩 테스트 뿐만 아니라 데이터 분석을 할 때도 정규 표현식을 많이 사용하기 때문에 한번 쯤 꼭 정리해야 겠다고 생각했다!

 

정규 표현식에서 사용하는 메타 문자

메타 문자란? 

원래 그 문자가 가진 뜻이 아닌 특별한 용도로 사용하는 문자를 말한다. 즉, 온점(.)을 본래 의미(문장을 끝냄)가 아닌 다른 의미를 부여하여 사용하겠다는 뜻이다. 메타 문자의 종류는 다음과 같은 것들이 있다. 

. ^ $ * + ? { } [ ] \ | ( )


정규 표현식에 메타 문자를 사용하여 특별한 의미를 부여하였다. 각 메타 문자별로 어떤 의미를 가지고 있는지, 이를 활용한 정규 표현식을 정리해보겠다. 

문자 클래스 []

의미: [] 사이의 문자들과 매치, [] 사이에는 아무 문자나 다 들어갈 수 있음

 

 

관련 문제 

프로그래머스 신규 아이디 추천

규칙에 맞게 입력 받은 문자열을 변환시키는 문제

#규칙에 맞지 않는 아이디를 입력했을 때, 입력한 아이디와 유사하면서 규칙에 맞는 아이디 추천
import re
def solution(new_id):
    str=new_id.lower()
    str=re.sub('[^a-z0-9\-_.]', '',str)
    str=re.sub('\.+', '.', str)
    str=re.sub('^[.]|[.]$', '',str)
    if str=='':
        str='a'
    str=str[:15]
    str=re.sub('[.]$','',str)
    while len(str) < 3:
        str += str[-1]
    return str

 

[Reference]

https://wikidocs.net/4308

 

08-2 정규 표현식 시작하기

[TOC] ## 정규 표현식의 기초, 메타 문자 정규 표현식에서 사용하는 메타 문자(meta characters)에는 다음과 같은 것이 있다. > 메타 문자란 원래 그 문자…

wikidocs.net

https://school.programmers.co.kr/learn/courses/30/lessons/72410

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

'Algorithm' 카테고리의 다른 글

[Python] 백준 2164, 백준 1929, 백준 1012 풀이  (1) 2024.10.20
2진수, 3진수, k진수 변환하는 법 | 파이썬 k진수 변환 | 소수찾기 | 프로그래머스 k진수에서 소수찾기 파이썬  (0) 2024.02.15
[코딩테스트/ Python] 탐색 알고리즘 DFS/ BFS  (0) 2023.05.13
[코딩테스트/Python] 꼭 필요한 자료구조 기초: 재귀함수  (0) 2023.05.08
[코딩테스트 /Python] 프로그래머스 기능 개발  (0) 2023.05.04
'Algorithm' 카테고리의 다른 글
  • [Python] 백준 2164, 백준 1929, 백준 1012 풀이
  • 2진수, 3진수, k진수 변환하는 법 | 파이썬 k진수 변환 | 소수찾기 | 프로그래머스 k진수에서 소수찾기 파이썬
  • [코딩테스트/ Python] 탐색 알고리즘 DFS/ BFS
  • [코딩테스트/Python] 꼭 필요한 자료구조 기초: 재귀함수
재온
재온
  • 재온
    Carpe Diem
    재온
  • 전체
    오늘
    어제
    • 분류 전체보기 (75)
      • AI (18)
        • NLP (5)
        • Toxicity Prediction (6)
        • Paper review (5)
      • Statistics (5)
        • mathematical statistics (2)
        • Time Series (3)
      • Algorithm (16)
      • Deep Learning (1)
      • Machine Learning (3)
      • TIL (11)
      • 공모전 및 프로젝트 (2)
      • 회고록 (3)
      • IT News (2)
      • 취준일기 (7)
      • 기타 (2)
  • 블로그 메뉴

    • 링크

      • Github
    • 공지사항

    • 인기 글

    • 태그

      코딩테스트
      Chatgpt api inference
      Seqeunce to seqeunce
      NLP
      이것이코딩테스트다
      음악가사분석
      tokenization repair
      AI 뉴스레터
      알고리즘
      크롬드라이버크롤링
      Prompt pattern
      time series
      시계열
      코딩테스트 개념
      SKT AI Fellowship 5기 후기
      Greedy 알고리즘
      Transformer기초
      파이썬
      NLP Paper
      노래가사분석
      Graph AI
      SKT AI Fellowship
      Prompting
      코딩테스트 파이썬
      chatgpt api 발급받기
      ChatGPT
      SMILES to vector
      chatgpt api 실습
      ssh 접속오류
      맞춤법 교정 모델
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.4
    재온
    [코딩테스트/ Python] 시간을 단축시켜주는 정규 표현식/프로그래머스 신규 아이디 추천
    상단으로

    티스토리툴바