728x90
🌲 정규식 Regular Expression
문자열을 검색하고 대체하는 데 사용 가능한 일종의 형식 언어(패턴)
간단한 문자 검색부터 이메일, 패스워드 검사 등 복잡한 문자 일치 기능 등
🚨 정규표현식 정리
🚨 자바스크립트 정규식 생성 방식
1) 생성자 함수 방식
new RegExp('표현', '옵션')
new RegExp('[a-z]', 'gi')
2) 리터럴 방식
/표현/옵션
/[a-z]/gi
3) 정규식 표현으로 'a'찾기
const str = `
010-1234-5678
siot@email.com
http://www.omdbapi.com/?apikey=7035c60c&s=frozen
Lorem Ipsum is simply dummy text of the printing and typesetting industry.
abbcccddd
`
const regexp = new RegExp('a', 'g') // 생성자 함수 방식
const regexp = /a/g // 리터럴 방식
console.log(str.match(regexp))
🚨 자바스크립트 메소드
💻 test()
정규식과 일치하는 특정 문자가 있는지 불린 데이터로 반환
정규식.test(문자열)
const regexp = /Ipsumd/gi
console.log(regexp.test(str)) // true
💻 match()
일치하는 문자열의 배열 데이터를 반환
문자열.match(정규식)
💻 replace()
일치하는 문자열을 대체하고 대체된 문자열을 반환
문자열.replace(정규식, 대체문자)
const regexp = /bb/gi
console.log(str.replace(regexp, 'BB'))
🚨 플래그 (옵션)
\.$
. (온점) : 임의의 한 문자와 일치시키는 명령이기 때문에 문자.(온점)을 찾기 위해서는 앞에 \백슬래쉬를 붙여 이스케이프 문자로 바꿔준다.
*Escape Character (이스케이프 문자) : \ 백슬래시 기호를 통해 본래의 기능에서 벗어나 상태가 바뀌는 문자
console.log(str.match(/h..p/g))
$ : 끝부분에 일치
str.match(/\.$/g)
m : 문자데이터는 하나의 시작점과 끝점이 존재하는데 m 플래그를 사용하면 줄바꿈 했을 때 각각의 줄에 또다른 시작점과 끝점을 만들어낸다고 이해
str.match(/\.$/gm)
🚨 패턴 (표현)
63개의 문자와 일치하지 않는 경계 + f로 시작하는 단어 찾기
str.match(/\bf\w{1,}/g)
숫자 찾기
str.match(/\d{1,]/g)
모든 공백을 찾아 제거
str.replace(/\s/g, '')
특정 문자 뒤에서 일치하는 문자 찾기 (?<=)
ㄴ @문자 뒤로 1개 이상 일치하는 임의의 문자 찾기
str.match(/(?<=@).{1,}/g)
a|b : a또는 b와 일치, 이때 플래그g를 작성하지 않으면 첫번째 패턴만 찾음
str.match(/the|text/g)
ab? : b가 없거나 b와 일치
str.match(/https?/g) // ["http", "https"]
728x90
'FE' 카테고리의 다른 글
TypeScript 타입, Type Annotation 타입 지정 (0) | 2021.11.17 |
---|---|
TypeScript 컴파일러 설치, nvm과 npm차이 (0) | 2021.11.16 |
OMDb API 영화데이터 요청&응답(axios)&처리 (0) | 2021.11.13 |
JSON, js 데이터로 변환하기 / 로컬 스토리지 local storage에 데이터 삽입, 꺼내오기, 수정하기 setItem, getItem, removeItem (0) | 2021.11.13 |
js 모듈 import와 export (0) | 2021.11.13 |