0Pricing
DevOps Bootcamp · 강의

정규 표현식(Regex) 입문

강력한 텍스트 패턴 일치에 필요한 정규 표현식의 구문과 핵심 개념을 이해합니다.

정규 표현식(Regex) 입문은(는) CoddyKit의 무료 DevOps Bootcamp 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 DevOps Bootcamp 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. DevOps Bootcamp 강의에는 총 4개의 강의가 포함되어 있습니다.

정규 표현식이란 무엇인가요?

흔히 Regex라고 줄여 부르는 정규 표현식은 텍스트를 검색하고 조작하는 데 사용하는 강력한 패턴입니다.

텍스트 안의 특정 문자열, 문자 또는 위치까지 찾을 수 있는 매우 강력한 검색어라고 생각하시면 됩니다.

정규 표현식은 Linux의 grep, sed, awk와 같은 프로그래밍, 스크립팅 및 명령줄 도구에서 널리 사용됩니다.

리터럴 문자 일치

가장 단순한 정규식은 정확히 일치하는 리터럴 문자를 찾습니다. 'apple'을 검색하면 정확히 'apple'을 찾습니다.

기본적인 일치 방법을 보여 주기 위해 grep 명령어(전역 정규 표현식 출력)를 사용해 보겠습니다.

echo "apple" > fruits.txt
echo "banana" >> fruits.txt
echo "pineapple" >> fruits.txt
grep "apple" fruits.txt
rm fruits.txt

점: 임의의 단일 문자

점(.)은 줄 바꿈을 제외한 임의의 단일 문자와 일치하는 특수 문자입니다.

한 위치에 사용할 수 있는 와일드카드라고 생각하시면 됩니다. 예를 들어 c.t는 "cat", "cot", "cut"과 일치합니다.

echo "cat" > words.txt
echo "cot" >> words.txt
echo "cut" >> words.txt
echo "coat" >> words.txt
grep "c.t" words.txt
rm words.txt

별표: 0개 이상 (*)

별표(*)는 바로 앞에 있는 문자 또는 그룹이 0개 이상 나타나는 경우와 일치하는 수량자입니다.

예를 들어 colou*r는 "color"('u' 0개)와 "colour"('u' 1개)에 일치합니다.

echo "color" > spellings.txt
echo "colour" >> spellings.txt
echo "colouuur" >> spellings.txt
echo "cold" >> spellings.txt
grep "colou*r" spellings.txt
rm spellings.txt

더하기 기호: 1개 이상 (+)

더하기 기호(+)는 앞에 있는 문자 또는 그룹이 1개 이상 나타나는 경우와 일치합니다.

*와 달리 요소가 최소 한 번은 나타나야 합니다. 따라서 go+gle는 "google", "gooogle"과 일치하지만 "ggle"과는 일치하지 않습니다.

참고: +, ?, {}를 grep에서 직접 사용하려면 확장 정규 표현식을 위한 -E 옵션을 사용해야 하는 경우가 많습니다.

echo "google" > search.txt
echo "goooogle" >> search.txt
echo "ggle" >> search.txt
grep -E "go+gle" search.txt
rm search.txt

물음표: 0개 또는 1개 (?)

물음표(?)는 앞에 있는 문자 또는 그룹이 0개 또는 1개 나타나는 경우와 일치합니다.

문자를 선택 사항으로 만듭니다. 예를 들어 colou?r는 "color"('u' 0개)와 "colour"('u' 1개)에 일치합니다.

echo "color" >> spellings.txt
echo "colour" >> spellings.txt
echo "colouuur" >> spellings.txt
grep -E "colou?r" spellings.txt
rm spellings.txt

앵커: 시작(^)과 끝($)

앵커는 문자와 일치하지 않고 텍스트의 특정 위치와 일치합니다.

  • ^는 줄의 시작과 일치합니다.
  • $는 줄의 끝과 일치합니다.

예: ^apple은 줄의 시작 부분에 있을 때만 "apple"과 일치합니다. apple$는 줄의 끝에 있을 때만 "apple"과 일치합니다.

echo "apple pie" > menu.txt
echo "fresh apple" >> menu.txt
echo "apple" >> menu.txt
grep -E "^apple" menu.txt
grep -E "apple$" menu.txt
rm menu.txt

문자 클래스: 대괄호 ([])

대괄호([])는 문자 클래스를 정의하며, 집합 안에 있는 임의의 단일 문자와 일치합니다.

  • [aeiou]는 임의의 단일 모음과 일치합니다.
  • [0-9]는 임의의 단일 숫자와 일치합니다.
  • [a-zA-Z]는 임의의 단일 문자와 일치합니다.

[^...]를 사용하여 클래스를 부정할 수도 있습니다. 예를 들어 [^aeiou]는 모음이 아닌 임의의 문자와 일치합니다.

echo "cat" > animals.txt
echo "bat" >> animals.txt
echo "rat" >> animals.txt
echo "cot" >> animals.txt
grep -E "[cb]at" animals.txt
grep -E "[^cbr]at" animals.txt
rm animals.txt

수량자: 중괄호 ({})

중괄호({})는 앞에 있는 문자 또는 그룹의 반복 횟수의 정확한 개수를 지정하는 수량자입니다.

  • a{3}은 "aaa"와 일치합니다.
  • a{2,}는 "aa", "aaa", "aaaa" 등과 일치합니다(최소 2개).
  • a{2,4}는 "aa", "aaa", "aaaa"와 일치합니다(2개에서 4개 사이).

이러한 수량자에는 grep -E를 사용해야 한다는 점을 기억하세요.

echo "helllo" > greetings.txt
echo "hello" >> greetings.txt
echo "helo" >> greetings.txt
grep -E "hel{2,3}o" greetings.txt
rm greetings.txt

정규 표현식 빠른 확인

다음 문자열을 살펴보세요.

  • banana
  • banaana
  • banaanana
  • bna

"banana"와 "banaana"에만 일치하는 정규 표현식은 무엇일까요?

정규 표현식 기초 요약

정규 표현식의 기본 사항을 학습하셨습니다!

  • 정규 표현식은 텍스트를 검색하고 조작하기 위해 패턴을 사용합니다.
  • 리터럴 문자는 자기 자신과 일치합니다.
  • ., *, +, ?, ^, $, [], {}와 같은 특수 문자는 강력한 일치 기능을 제공합니다.

다음으로 grep 명령과 다양한 옵션을 사용하여 이러한 패턴을 고급 텍스트 검색에 적용해 보겠습니다.

자주 묻는 질문

“정규 표현식(Regex) 입문” 강의는 무료인가요?

네 — “정규 표현식(Regex) 입문” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 DevOps Bootcamp 강의 전체를 잠금 해제할 수 있습니다. DevOps Bootcamp 강의에는 총 4개의 강의가 포함되어 있습니다.

“정규 표현식(Regex) 입문”에서 뭘 배우나요?

강력한 텍스트 패턴 일치에 필요한 정규 표현식의 구문과 핵심 개념을 이해합니다. 브라우저에서 직접 실행하는 실습 코드로 DevOps Bootcamp을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

DevOps Bootcamp을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 DevOps Bootcamp은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.

“정규 표현식(Regex) 입문” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 DevOps Bootcamp 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 DevOps Bootcamp 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 정규 표현식(Regex) 입문
  2. 정규 표현식을 활용한 고급 Grep
  3. 정규 표현식과 sed/awk 결합
  4. 캡처 그룹, 역참조 및 치환
← DevOps Bootcamp(으)로 돌아가기