PCRE (정규표현식) 문제

1. pcre:”^select/” 가 탐지할 수 있는 경우

ㄱ. Union select     ㄴ.Select     ㄷ.select null.null.null

[해설]

^는 시작의 의미, 즉, select로 시작하는 경우를 의미함.
ㄱ 안됨. 시작이 select가 아님
ㄴ 안됨. 대문자라서

 

2. pcre:”/union$/” 가 탐지할 수 있는 경우

ㄱ.Union select     ㄴ.?idx=1%20union     ㄷ.?idx=1 union

[해설]

$는 끝의 의미, 즉, union으로 끝나는 경우를 의미함.
ㄱ 안됨. 끝이 union이 아님

 

3. pcre:”/a.a/” 가 탐지할 수 있는 경우

ㄱ. Aaa     ㄴ.aTa     ㄷ.aTat

[해설]

ㄱ 안됨. 3글자는 맞지만 첫글자가 대문자
ㄷ 안됨. 글자수가 안맞음

 

4. pcre:”/(one|two) apple/” 가 탐지할 수 있는 경우

ㄱ.one apple     ㄴ.twothree apple     ㄷ.apple

[해설]

ㄴ three때문에 안됨
ㄷ apple앞에 one이나 two가 없어서 안됨

 

5. pcre:”/boan?/” 가 탐지할 수 있는 경우

ㄱ.boan     ㄴ.boann     ㄷ.boa

[해설]

? 앞에 적용된 문자가 0개 또는 1개만 있어야함

2번은 불만족, ?앞에 문자가 2개가 나옴

6. pcre:”/pro*ject/” 가 탐지할 수 있는 경우

ㄱ.project    ㄴ.prject    ㄷ.projject

[해설]

* 앞에 적용된 문자가 0개 또는 1개 이상 있어야함.

 

7. pcre:”/boan+project/” 가 탐지할 수 있는 경우

ㄱ.boaproject     ㄴ.boanpproject     ㄷ.boannproject

[해설]

+ 앞에 적용된 문자가 1개 이상

ㄱ은 n이 없음.
ㄴ은 p가 두개라서 안됨

 

8. Pcre:”/bo{2,4}an/”가 탐지 할 수 있는 경우

ㄱ.booan     ㄴ.boan     ㄷ.booooan

[해설]

bo 뒤에 2~4개의 문자가 있어야함

ㄷ은 불가 bo뒤에 문자 5개

 

9. Pcre:”/[A-Z]{3}/” 가 탐지할 수 있는 경우

ㄱ.aaA     ㄴ.ABC     ㄷ.A-23

[해설]

A-Z 사이의 문자가 3번 나타나야함

ㄱ은 소문자라 안됨

ㄷ은 숫자 안됨