이전 강좌에서 와일드 카드가 무엇인지 알아보고 와일드 카드 중 *에 대해 알아보았습니다. 해결 못 한 문제도 있었죠. 이름 중간 글자를 필터링하는 문제였습니다.
이번엔 바로 이 문제를 해결하는 방법을 소개하겠습니다. 이전 강좌를 못 보신 분들은 반드시 확인하고 돌아와 주세요.
그림을 보면, 필터 단추(

)가 보이는 걸 보아 필터가 적용된 상태인 걸 알 수 있습니다. 그리고 필터 단추에는 깔때기(

) 모양 단추가 없습니다. 모두 역삼각형(

) 모양이죠. 필터는 적용되었지만, 특정 조건으로 필터링 처리된 것이 아니란 얘기죠. 이런 식으로 문서의 필터 단추 확인하여 필터링 상태를 파악하면 이 문서가 전달하고 싶은 내용을 알 수 있습니다. 아직은 필터링 처리한 것이 아니니까 "뭔가 필터링을 하기 위한 준비 단계구나"라는 것을 알 수 있습니다.
어쨌든 위 상태를 만들기 위해선 예제 파일을 열고 필터를 적용해야 하겠죠. 표의 아무 셀이나 클릭하고 데이터 탭 > 필터를 클릭하여 위 그림과 같은 상태를 만듭니다.
하고 싶은 것은 고객명 데이터 중 가운데 글자가 "장"자인 것을 필터링하는 것입니다.
와일드 카드 *로는 불가능하다는 것을 지난 강좌에서 설명했습니다. 그래서 다음 와일드 카드를 설명하겠습니다. ?입니다. 의미부터 알아보겠습니다.
*가 없거나 있는 모든 문자라면,
?는 반드시 있는 하나의 문자입니다.
그래서 장?는 "장"으로 시작하고 뒤에 단 하나의 문자가 있는 것을 말합니다. 즉 ""장O" 밖에 없죠. 성이 "장"씨이고 외자인 이름만 해당합니다.
다음, ?장은 단 하나의 어떤 문자 뒤에 "장"으로 끝나는 것을 말합니다. 즉 "O장"만이 해당됩니다.
그럼, 이름에 중간 글자에 "장"만 필터링 하려면, ?장?라는 것이 되겠죠.
그림처럼, 이름의 중간 글자가 "장"인 데이터를 필터링하는 것을 알 수 있습니다.
일단 문제는 해결되었습니다. 하지만 여전히 다른 문제가 남습니다. ?장? 필터링은 반드시 3글자인 것만 처리한다는 것이죠. 우리의 이름은 대부분 3글자지만, "김미리내, 박아브라함"처럼 4글자, 5글자로 된 이름도 있습니다. 순수 한글이거나 성경의 이름을 사용한 경우에서 볼 수 있죠. 즉 고객명 중에 "김장하늘"이라는 데이터가 있다면, 얘는 필터링하지 않는다는 것입니다.
그럼, 이렇게 된 이름까지 중간 글자 중 "장"자가 들어간 것을 필터링하고 싶다면 어떻게 해야할까요?
힌트를 드리면 지금까지 알아본 와일드 카드 *와 ?를 잘 조합하시면 됩니다. 정답은 아래쪽 댓글에 있습니다. 한번 생각해 보시고 확인해 주세요.