Javascript
[JS] 정규식 (정규표현식) 정리
coding-restaurant
2020. 5. 15. 09:43
728x90
728x90
참고 : https://webclub.tistory.com/95?category=503656
자바스크립트 정규표현식이란? 정규식 기초에 대해 알아보자
정규식
문자열에서 특정한 문자를 찾아내는 도구
정규식 생성의 두 단계
1단계 : 컴파일 compile
- 검출하고자 하는 패턴을 만드는 것. 우선 정규식 객체를 만든다.
- 정규식 객체는 리터럴이나 객체 생성자 둘 중 하나로 만든다.
// 리터럴
var pattern = /a/
// 정규식 객체 생성자
var pattern = new RegExp('a');
- 컴파일해서 객체를 만든 뒤 문자열에서 원하는 문자를 찾아낸다.
2단계 : 실행 execution
- RegExp.exec() : 필요한 문자 추출 (특정 문자열을 값으로하는 배열 리턴. 결과가 없으면 null)
- RegExp.test() : 패턴이 있는지 테스트 (true, false 리턴)
// RegExp.exec()
console.log(pattern.exec('abcdef')); // ["a"]
console.log(pattern.exec('bcdefg')); // null
// RegExp.test()
console.log(pattern.test('abcdef')); // true
console.log(pattern.test('bcdefg')); // false
정규식 패턴을 만들 때 옵션을 설정하여 검색 결과를 다르게 만들 수도 있습니다.
i를 붙이면 대소문자를 무시하며, g를 붙이면 검색된 모든 결과를 리턴합니다.
var test = /a/i;
console.log("Abcde".match(test)); // ["A"];
var xg = /a/;
console.log("abcdea".match(xg));
var og = /a/g;
console.log("abcdea".match(og));
정규식을 사용할 수 있는 문자열 메소드 2개
문자열 객체의 몇 메소드는 정규식을 사용할 수 있습니다.
- String.match() : RegExp.exec()와 같은 값 리턴
- String.replace() : 문자열에서 패턴 검색 - 변경 - 변경된 값 리턴
728x90
728x90