CS · Regex
쓸 자리와 안 쓸 자리 - 정규식이 답이 아닐 때
HTML을 정규식으로 파싱하면 왜 반드시 깨지는지, 이메일 검증 패턴이 왜 길수록 나빠지는지를 본다. 정규식이 필요해 보이는 자리 중 상당수는 위층 설계가 실패한 자리다.
패턴 하나로 찾기 4편
CS · Regex
ReDoS - 정규식 한 줄이 서버를 세운다
요청은 한 건인데 CPU가 100%가 되고 응답이 끊긴다. 에러도 안 난다. 갈림길이 겹친 정규식 하나가 입력 한 글자마다 경우의 수를 두 배로 늘리고 있어서다.
패턴 하나로 찾기 3편
CS · Regex
엔진이 하는 일 - 해보고 안 되면 되돌아간다
정규식 엔진은 패턴을 한눈에 알아보지 않는다. 골목에 들어갔다 아니면 돌아 나오기를 반복할 뿐이다. 탐욕과 게으름이 왜 다른 답을 내는지도 그 절차 위에서만 설명된다.
패턴 하나로 찾기 2편
CS · Regex
정규식 - 찾을 것을 글자 대신 규칙으로 적는다
찾을 글자를 아는 날은 contains 하나로 끝난다. 문제는 무엇을 찾는지 정확히 모를 때다. 그때 이름 대신 인상착의를 적는 것이 정규식이고, 이 시리즈는 그 전단을 들고 뛰는 엔진을 따라간다.
패턴 하나로 찾기 1편