본문 바로가기

Backend/NestJS

전화번호 조회시 010-0000-0000 또는 01000000000 둘다 조회 가능하도록 하는 코드 (feat. /-/g)

전화번호를 조회하는 코드에서 010-0000-0000 또는 01000000000 으로도 조회가 가능하도록 코드를 작성했다. 

    // 사용자가 전화번호 입력시 - (하이픈)도 포함해서 검색할 경우에도 검색 가능하도록 처리
    if (keyword) {
      const formattedKeyword = keyword.replace(/-/g, ''); // 하이픈 제거

      daoMemberListQuery.andWhere(
        "(LOWER(wa.name) LIKE LOWER(:keyword) OR REPLACE(wa.phoneNumber, '-', '') LIKE :formattedKeyword)",
        {
          keyword: `%${keyword}%`,
          formattedKeyword: `%${formattedKeyword}%`,
        },
      );
    }

 

여기서 /-/g는 문자열에서 모든 하이픈(-) 문자열을 g(global) 전역적으로 찾아 '' 공백처리 하겠다는 것이다. 

 

이런 표현을 처음 접하는데, 기억해놔야겠다.