패턴 만들기(객체 생성): 정규표현식 리터럴과 객체 생성자
/* 정규표현식 리터럴 */
var pattern1 = /a/; // '/'와 '/'사이의 a가 우리가 찾고자하는 것
/* 정규표현식 객체 생성자 */
var pattern2 = new RegExp('a'); // 위의 방법과 같은 결과
RegExp 객체 사용(메소드 실행): RegExp.exec(), RegExp.test()
정규표현식을 통해 객체를 생성했다면 이제 문자열에서 원하는 문자를 찾아내보자.
ex) 어떤 문자열에서 url 혹은 email 등에 해당되는 정보를 추출해내고 싶다.
/* RegExp.exec(): 찾고자하는 패턴이 있다면 그것을 배열로 리턴 */
var pattern = /a/;
console.log(pattern.exec('abcdef')); // ["a"]
console.log(pattern.exec('bcdef')); // null
var pattern2 = /a./; // .이란 어떤 한 문자
console.log(pattern2.exec("asdf")); // ["as"]
/* RegExp.test(): 패턴에 해당하는 문자열의 존재여부에 따라 true/false 리턴 */
var pattern = /a/;
console.log(pattern.test("abcdef")); // true
문자열 메소드: String.match(), String.replace()
/* String.match(): RegExp.exec()와 비슷하다. */
var pattern = /a/;
var str = 'abcdef';
str.match(pattern); // ["a"]
/* String.replace(): 문자열에서 패턴을 검색해서 변경한 후에 변경된 값 리턴 */
var pattern = /a/;
var str = 'abcdef';
str.replace(pattern, 'A'); // "Abcdef"
옵션: i 와 g
var xi = /a/; // i 옵션 사용X
"Abcde".match(xi); // null
var oi = /a/i; // i 옵션 사용O
"Abcde".match(oi); // ["A"]
var ig = /a/ig; // i와g 옵션 모두 사용
"Abcdea".match(ig); // ["A", "a"]
var xg = /a/; // g 옵션 사용X
"abcdea".match(xg); // ["a"]
var og = /a/g; // g 옵션 사용X
"abcdea".match(og); // ["a", "a"]
'Javascript > 기초공부' 카테고리의 다른 글
[Javascript: 값으로서의 함수] 속성값 / 메소드 / First-class citizen (0) | 2020.03.13 |
---|---|
[Javascript: 유효범위] 전역변수 / 지역변수 / 전역변수 사용법 / 유효범위의 대상(함수) / 정적 유효범위 (0) | 2020.03.13 |
[Javascript: 모듈(Module)] 모듈화 / 라이브러리 (0) | 2020.03.11 |
[Javascript: 객체(Object)] 객체 생성 /사용 / 반복문 / 객체 안에 객체 (0) | 2020.03.10 |
[Javascript: 배열(Array)] 원소 추가 / 제거 / 정렬 / 반복문 응용 (0) | 2020.03.10 |