본문 바로가기
카테고리 없음

정규표현식

by Jundol 2020. 8. 21.

Regular Expression

자바스크립트 기준으로 작성한다.


- 아래 두 개는 같은 표현방식이다.

var pattern = /a/

var pattern = new RegExp('a')


- 정규표현식 메서드

pattern.test()

pattern.exec()


- 문자열 정규표현식 활용 (메서드)

var str = "abcdef"

str.replace(pattern, "A")

str.match(pattern)

=> 반환값은 boolean


옵션

- 'i' 는 대소문자를 구분하지않는다는 의미다.

var pattern = /a/i

- 'g' 는 global 즉, 전역으로 검색하겠다는 의미다. 모든 결과 리턴

var pattern = /a/g

- '\' (back slash) 는 문자로 인식하게끔 만들어준다. (escape 문자)

- '^' 맨 앞을 의미 , '$' 는 문자열의 끝을 의미한다.

- '.' (point) 어떠한 모든 문자를 의미한다.

- '( )' (소괄호) grouping 을 의미한다.

- '[ ]' (대괄호) 특정문자에 대해 한정시킨다. 대괄호안의 낱개의 문자'들'은 정규표현검색에서 '한' 개의 문자로 인식된다.

- '-' (dash) Range, 범위를 지정할 수 있다.

- '^' 이 문자는 carrot 이라고 하는데 대괄호 안에서 사용이 될 경우 기존의 맨 앞을 의미했던것과는 다른 의미가 되며 인식되는 의미는 부정의 의미로서 대괄호 안의 문자들과는 맞지 않는 것들만 선택한다.

- '*' (수량자) 0 ~ 여러 개를 의미한다. 있을수도있고 없을수도있고

- '+' (수량자) 1 ~ 여러 개를 의미한다.

- '?' (수량자) 없거나 하나 있거나

 -> ex) a*b (b 앞에 있는 a가 0개일수도있고 여러개있을수도있고)

 -> ex) a+b (b 앞에 무조건 하나 이상의 a가 있어야한다)

 -> ex) a?b (b 앞에 a가 없을 수 도있고 하나 있는 경우도 있고)

- '{}' 중괄호 안에는 숫자가 들어갈 수 있고 해당 숫자만큼을 선택한다. 

    콤마를 중괄호 안에 사용할 수 있으며 두 개의 숫자 사이에 콤마를 지정할경우 이상 이하를 의미. 

    한개의 숫자와 한개의 콤마로 이루어져있을 경우 해당 숫자 이상을 의미.

댓글