
(3) 한정자 (quantifier) quantifier의 의미는 수량 한정자입니다. 정규표현식은 반복과 선택(합집합)을 나타낼 수 있는 언어이므로 반복이 매우 중요한 기능입니다. 여기서 한정자는 반복을 몇번 할 것인가, 또는 얼마나 허용할 것인가에 관한 규칙을 표현하게 해 줍니다. 우리가 흔히 알고 있듯이 *는 0번 이상, +는 한번 이상 무한번까지 제한없는 반복을 의미합니다. 프로그래밍 언어의 정규표현식은 그냥 반복을 나타내는 *나 + 이외에도 몇번 반복할 수 있는지 범위를 정확히 표현할 수 있는 기능을 제공합니다. X? X가 한번 또는 0번 X* X가 0번 이상 X+ X가 한번 이상 X{n} X가 정확히 n번 반복, n은 정수 X{n,} X가 n번 이상 반복 X{n,m} X가 n번 이상, m번 이하..

(1) 가장 간단한 정규표현식 - 문자열 regex 패턴으로 "foo"가 주어진다면 그것은 "foo"라는 연속된 세 글자의 단어를 나타내는 패턴이 됩니다. 그럼 이것은 어떻게 매치가 될까요? 정규표현식 테스트 프로그램 (1) regex 먼저 (2) input 먼저 (3) 그룹찾기 (기타) 종료.. 1 regex: foo input: Let's test foo pattern... 찾은 문자열 "foo" (11, 14) input: how many foos in afooafoo? 찾은 문자열 "foo" (9, 12) 찾은 문자열 "foo" (18, 21) 찾은 문자열 "foo" (22, 25) input: 위의 실행 결과에서 보듯이 foo라는 regex는 입력 안에서 같은 것이 나타나는 부분에 모두 매치됩니..

오라클 사이트에서는 자바 튜토리얼 중 하나로 regex를 훌륭하게 소개하는 파트를 제공합니다. 이 튜토리얼의 특징은 자바의 regex 기능을 테스트해 볼 수 있는 프로그램을 제공해 주는 것입니다. 이것을 RegexTestHarness라는 이름의 자바 클래스인데 main 함수를 포함하고 있는 이 클래스를 컴파일해서 실행하면 regex를 공부하면서 테스트할 수 있는 훌륭한 프로그램이 얻어집니다. 다음 링크에서 그 프로그램 소스를 확인해 보기 바랍니다. https://docs.oracle.com/javase/tutorial/essential/regex/ 그런데 이 프로그램을 몇 가지 점에서 좀더 편리하게 수정한 프로그램이 아래 링크에 제공됩니다. 이것은 컴파일러 과목의 실습을 위해 사용 기능 몇가지만 수정한 ..
- Total
- Today
- Yesterday
- APPEND
- 이터레이터
- zip
- C++ 클래스
- ToString
- 지연계산
- 패턴
- contentEquals
- rust
- indexof
- follow
- 이터러블
- 자바regex
- Lazy evaluation
- python example
- python exercise
- typedef
- Iterator
- contains
- 동적바인딩
- TypeError
- Camel Style
- sort key
- comparable
- CompareTo
- 스트링 +
- format
- 스트링
- max
- 콜렉션
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |