Home IT/WEB 문자열에서 정규 표현식과 일치하는 부분을 찾는 데 사용되는 match()

[javascript]문자열에서 정규 표현식과 일치하는 부분을 찾는 데 사용되는 match()

JavaScript에서 match() 메소드는 문자열에서 정규 표현식과 일치하는 부분을 찾는 데 사용됩니다. 이 메소드는 문자열에 적용되며, 정규 표현식을 인수로 받습니다. 여기 사용 방법에 대한 기본적인 안내가 있습니다.

기본 사용법

inline ad
let result = string.match(regexp);
  • string: 검사할 문자열입니다.
  • regexp: 문자열에서 찾고자 하는 패턴을 나타내는 정규 표현식입니다.

예시

let str = "Hello, world!";
let regexp = /Hello/;
let result = str.match(regexp);
console.log(result); // 출력: ["Hello"]

이 예시에서 str 문자열에서 “Hello”라는 단어를 찾고 있습니다.

글로벌 검색

정규 표현식에 g 플래그를 사용하면 문자열 전체에서 모든 일치하는 항목을 찾습니다.

let str = "Cats are great, cats are fun.";
let regexp = /cats/gi; // 'g'는 전역 검색, 'i'는 대소문자 구분 안 함
let result = str.match(regexp);
console.log(result); // 출력: ["Cats", "cats"]

일치 항목 없을 경우

일치하는 항목이 없으면 null을 반환합니다.

let str = "Hello, world!";
let regexp = /dog/;
let result = str.match(regexp);
console.log(result); // 출력: null

그룹화 및 캡처

정규 표현식에서 괄호를 사용하여 일치하는 부분을 그룹화하고 캡처할 수 있습니다.

let str = "I love JavaScript";
let regexp = /love (\w+)/;
let result = str.match(regexp);
console.log(result); // 출력: ["love JavaScript", "JavaScript"]
console.log(result[1]); // 출력: "JavaScript"

여러 단어 찾기

여러 단어를 찾으려면 | 연산자를 사용할 수 있습니다.

let str = "Cats, dogs, and birds.";
let regexp = /cats|dogs|birds/gi;
let result = str.match(regexp);
console.log(result); // 출력: ["Cats", "dogs", "birds"]

숫자 찾기

숫자를 찾으려면 \d를 사용합니다.

let str = "There are 3 apples and 5 oranges.";
let regexp = /\d+/g;
let result = str.match(regexp);
console.log(result); // 출력: ["3", "5"]

이메일 주소 찾기

복잡한 패턴, 예를 들어 이메일 주소를 찾으려면, 보다 정교한 정규 표현식이 필요합니다.

let str = "My email is example@test.com";
let regexp = /\S+@\S+\.\S+/;
let result = str.match(regexp);
console.log(result); // 출력: ["example@test.com"]

특정 문자로 시작하거나 끝나는 단어 찾기

let str = "This is a test";
let startRegexp = /^This/;
let endRegexp = /test$/;
console.log(str.match(startRegexp)); // 출력: ["This"]
console.log(str.match(endRegexp)); // 출력: ["test"]

특정 문자 집합 찾기

대괄호 []를 사용하여 특정 문자 집합 중 하나에 해당하는 문자를 찾습니다.

let str = "Hello, how are you?";
let regexp = /[aeiou]/g;
let result = str.match(regexp);
console.log(result); // 출력: ["e", "o", "o", "a", "e", "o", "u"]

특정 형식의 문자열 찾기

특정 형식, 예를 들어 날짜 형식을 찾으려면 보다 복잡한 정규 표현식이 필요합니다.

let str = "Today's date is 11/11/2023.";
let regexp = /\d{2}\/\d{2}\/\d{4}/;
let result = str.match(regexp);
console.log(result); // 출력: ["11/11/2023"]

이러한 예시들은 match() 메소드가 얼마나 유연하고 강력한지 보여줍니다. 정규 표현식을 통해 문자열에서 다양한 패턴을 찾을 수 있으며, match() 메소드는 이러한 패턴을 추출하는 데 매우 유용합니다.

관련문서

MDN web docs : String.prototype.match()

RECENT POSTS

[javscript]API 응답에서 키 값들을 검증하는 방법

API 응답에서 다수의 키 값들을 검증할 때 코드의 중복을 줄이는 것은 유지보수성을 향상시키고, 가독성을 높이는 데 중요합니다. 이를 위해 몇 가지 접근 방법을 사용할...

[javscript]특정 키를 제외하고 두 객체를 비교하는 방법

특정 키를 제외하고 두 객체를 비교하는 작업은 데이터의 동등성을 평가하고 싶을 때 유용합니다. Lodash 라이브러리를 통해서 처리할 수 있는 방법에 대해서 살펴보겠습니다. Lodash를 사용한 특정...

[javscript]배열을 특정 키의 값에 따라 정렬하는 방법, _.orderBy

Lodash의 _.orderBy 메소드를 사용하면 배열을 특정 키의 값에 따라 정렬할 수 있습니다. 이 메소드는 배열의 각 항목을 정렬할 기준이 되는 하나 이상의 속성 이름과...

[css]autoprefixer: end value has mixed support, consider using flex-end instead warning 처리 및 다양한 에러 메시지 의미

이 경고 메시지는 CSS를 처리하는 도구인 Autoprefixer가 justify-content: end; 속성값을 처리하려 할 때 발생합니다. Autoprefixer는 CSS에 벤더 접두사를 자동으로 추가해 주는 도구로, 다양한 브라우저에서 CSS 속성이...