regex regular expression tester online free cheat sheet

온라인 정규식 테스트 및 디버거: 개발자를 위한 무료 도구

온라인에서 정규 표현식을 무료로 테스트하고 디버깅하세요. 정규식 치트 시트, 모든 플래그 지원, JavaScript 등을 위한 실시간 매칭을 제공합니다.

온라인 정규식 테스트 및 디버거: 개발자를 위한 무료 도구

정규 표현식(Regex)은 패턴 매칭 및 텍스트 조작을 위한 매우 강력한 도구입니다. 하지만 올바르게 작성하기가 매우 까다로운 것으로도 유명합니다. 문자 하나가 빠지거나 플래그가 잘못 설정되면 작동하는 스크립트와 손상된 스크립트의 차이가 발생할 수 있습니다. 당사의 온라인 정규식 테스터는 정규 표현식을 테스트, 디버깅 및 세분화할 수 있는 무료 실시간 환경을 제공하여 이 문제를 해결하도록 설계되었습니다.

빠른 시작: 지금 정규식 테스트

👉 **당사의 정규식 테스터**를 사용하여 패턴을 즉시 검증하세요. 매치 및 그룹에 대한 실시간 피드백을 받으세요.

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

정규 표현식은 검색 패턴을 형성하는 문자 시퀀스입니다. 문자열 매칭, 검색 및 텍스트 교체에 사용할 수 있습니다. 정규식은 JavaScript, Python, PHP, Java, C#을 포함한 거의 모든 프로그래밍 언어에서 지원됩니다.

기본 구문은 언어마다 비슷하지만 "フレーバー(Flavor)"라고 불리는 미묘한 차이가 있습니다. 당사의 온라인 도구는 주로 웹 개발의 표준이며 다른 현대적인 엔진과 높은 호환성을 갖춘 JavaScript 정규식 엔진을 사용합니다.

정규식 플래그 이해하기

플래그는 정규 표현식이 해석되는 방식을 변경합니다. 당사의 도구는 다음 표준 플래그를 지원합니다.

  • g (전역): 첫 번째 매치에서 멈추지 않고 모든 일치 항목을 찾습니다.
  • i (대소문자 무시): 대소문자를 구분하지 않고 매칭합니다(예: [A-Z]a-z와 매칭됨).
  • m (다중 행): ^$가 전체 문자열뿐만 아니라 각 행의 시작과 끝과 매칭되도록 합니다.
  • s (DotAll): .이 줄바꿈 문자와 매칭되도록 허용합니다.
  • u (유니코드): 패턴을 유니코드 코드 포인트 시퀀스로 취급합니다.
  • y (Sticky): lastIndex 속성에 표시된 인덱스에서만 매칭합니다.

정규식 치트 시트: 일반적인 패턴

시작하는 데 도움이 되도록 가장 일반적인 정규식 패턴에 대한 빠른 참조 표를 제공합니다.

패턴 의미 예시
. 줄바꿈을 제외한 모든 문자 h.that, hot과 매칭
\d 모든 숫자 (0-9) \d\d22와 매칭
\w 모든 단어 문자(영숫자 + 밑줄) \w+word_1과 매칭
\s 모든 공백 문자(공백, 탭, 줄바꿈) \s 와 매칭
^ 문자열의 시작 ^Hello
$ 문자열의 끝 world$
* 0회 이상 반복 lo*l, lo, loo와 매칭
+ 1회 이상 반복 lo+lo, loo와 매칭
? 0회 또는 1회 발생 colou?rcolor, colour와 매칭
[abc] 대괄호 안의 모든 문자 [bt]atbat, tat과 매칭
(abc) 캡처 그룹 `(red

실제 사례 및 사용 사례

1. 이메일 주소 유효성 검사

기본적인 이메일 유효성 검사 정규식은 다음과 같습니다. ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$

2. 전화번호 매칭

표준 미국 전화번호 형식(xxx-xxx-xxxx)의 경우: ^\d{3}-\d{3}-\d{4}$

3. URL 추출

텍스트 블록에서 모든 URL을 찾으려면: https?:\/\/[^\s$.?#].[^\s]*

온라인 정규식 테스터 사용 방법

  1. 패턴 입력: "Pattern" 필드에 정규 표현식을 입력합니다.
  2. 플래그 선택: 필요에 따라 g, i, m 등의 플래그를 전환합니다.
  3. 테스트 텍스트 입력: 검색하려는 텍스트를 "Test String" 필드에 붙여넣습니다.
  4. 결과 확인: 일치하는 항목이 실시간으로 강조 표시되며 캡처된 그룹의 세부 정보를 볼 수 있습니다.

자주 묻는 질문 (FAQ)

Q: 왜 제 정규식이 코드에서 매칭되지 않나요?

A: 올바른 정규식 "Flavor"를 사용하고 있는지 확인하세요. 대부분의 구문은 공통적이지만 "Lookbehind"나 특정 문자 클래스와 같은 기능은 Python과 JavaScript에서 다르게 작동할 수 있습니다. 또한 문자열 리터럴에서 백슬래시를 적절하게 이스케이프했는지 확인하세요(예: Java에서는 \d 대신 \\d가 필요한 경우가 많습니다).

Q: *+의 차이점은 무엇인가요?

A: *0회 이상 매칭됩니다. 즉, 앞의 문자가 선택 사항임을 의미합니다. +1회 이상 매칭됩니다. 즉, 해당 문자가 최소 한 번은 나타나야 함을 의미합니다.

Q: 리터럴 점 .을 어떻게 매칭하나요?

A: 점은 정규식에서 특수 문자("모든 문자"를 의미)이므로 백슬래시로 이스케이프해야 합니다: \..

결론

정규 표현식을 마스터하는 것은 긴 여정이지만, 적절한 도구가 있다면 훨씬 쉬워집니다. 당사의 온라인 정규식 테스터는 복잡한 패턴을 자신 있게 구축하는 데 필요한 명확성과 피드백을 제공합니다.

패턴 디버깅을 시작할 준비가 되셨나요? 지금 정규식 테스터를 사용해 보세요!