정규표현식 총정리

KoEunseo·2022년 10월 17일
0

코드스테이츠

목록 보기
45/45

정규표현식은 스터디원분들 덕에 몇번 접한 적이 있다.
그래서 오늘 공부하는데 아주 수월했다.ㅎㅎ
아주 길고 복잡한 함수가 한줄로 줄어드는 기적을 몇번 보기도 해서 공부한번 하면 좋겠다 싶긴 했는데 이렇게 공부하게 되었다.
사실... 암기하기는 어렵지만 정규표현식 보고 이해하는 정도만 돼도 아주 좋지 않을까 싶다!

리터럴 패턴

슬래시로 감싸 사용

생성자 함수 호출 패턴

RegExp객체의 생성자 함수를 호출해 사용

정규식 패턴 설명
^ 줄(Line)의 시작에서 일치 /^abc/
$ 줄(Line)의 끝에서 일치 /xyz$/
.(특수기호, 띄어쓰기를 포함한) 임의의 한 문자
a|ba or b 와 일치, 인덱스가 작은 것을 우선 반환
*0회 이상 연속으로 반복되는 문자와 가능한 많이 일치. {0,} 와 동일
*?0회 이상 연속으로 반복되는 문자와 가능한 적게 일치. {0} 와 동일
+1회 이상 연속으로 반복되는 문자와 가능한 많이 일치. {1,} 와 동일
+?1회 이상 연속으로 반복되는 문자와 가능한 적게 일치. {1} 와 동일
{2}숫자 2개 연속 일치
{2,}2개 이상 연속 일치
{2, 5}2개 이상 5개 이하 연속 일치
()캡쳐(capture)할 그룹
[a-z]a부터 z 사이의 문자 구간에 일치(영어 소문자)
[A-Z]A부터 Z 사이의 문자 구간에 일치(영어 대문자)
[0-9]0부터 9 사이의 문자 구간에 일치(숫자)
\(역슬래쉬)escape 문자. 특수 기호 앞에 \를 붙이면 정규식 패턴이 아닌, 기호 자체로 인식
\d숫자를 검색함. /[0-9]/와 동일
\D숫자가 아닌 문자를 검색함. /[^0-9]/와 동일
\w영어대소문자, 숫자, (underscore)를 검색함. /[A-Za-z0-9]/ 와 동일
\W영어대소문자, 숫자, (underscore)가 아닌 문자를 검색함. /[^A-Za-z0-9]/ 와 동일
[^][]안의 문자열 앞에 ^이 쓰이면, []안에 없는 문자를 검색함

RedExp 메서드

exec() 원하는 정보를 뽑아내고자 할때 사용.

/c/.exec('cat') //['c'] 리턴

test() 원하는 정보 있는지여부 리턴

/c/.test('cat') //true 리턴

String 메서드

match() 주어진 문자열과 일치된 결과 배열로 반환.

'cat'.match(/c/) //['c'] 리턴

replace() 치환하려는 문자열로 변경 후 변경된 값 리턴

(+)g flag와 함께 많이 사용하는 것 같았다!

split()

search() 정규표현식을 인자로 받아 가장 처음 매칭되는 부분 문자열의 인덱스 반환

flag : 순서상관없음! 옵션같은 것

i 대소문자 상관없이

g 검색된 모든 결과 리턴

m 다중행 검색

profile
주니어 플러터 개발자의 고군분투기

0개의 댓글