다음을 통해 공유


문자열을 패턴과 일치시키는 방법 (Visual Basic)

문자열 데이터 형식의 식이 패턴을 충족하는지 확인하려면 Like 연산자를 사용할 수 있습니다.

Like 는 두 개의 피연산자를 사용합니다. 왼쪽 피연산자는 문자열 식이며 오른쪽 피연산자는 일치에 사용할 패턴을 포함하는 문자열입니다. LikeBoolean 문자열 식이 패턴을 충족하는지 여부를 나타내는 값을 반환합니다.

문자열 식의 각 문자를 특정 문자, 와일드카드 문자, 문자 목록 또는 문자 범위와 일치시킬 수 있습니다. 패턴 문자열의 사양 위치는 문자열 식에서 일치시킬 문자의 위치에 해당합니다.

문자열 식의 문자를 특정 문자와 일치하려면

패턴 문자열에 특정 문자를 직접 넣습니다. 특정 특수 문자는 대괄호([ ])로 묶어야 합니다. 자세한 내용은 Like 연산자(Like Operator)를 참조하세요.

다음 예제에서는 단일 문자myString로 정확히 구성되는지 여부를 H 테스트합니다.

Dim sMatch As Boolean = myString Like "H"

문자열 식의 문자를 와일드카드 문자와 일치하려면

패턴 문자열에 물음표(?)를 넣습니다. 이 위치에서는 유효한 문자가 성공적인 일치를 이룹니다.

다음 예제는 myString이 단일 문자 W과 임의의 값의 정확히 두 문자로 구성되는지를 테스트합니다.

Dim sMatch As Boolean = myString Like "W??"

문자열 식의 문자를 문자 목록과 일치하려면

패턴 문자열에 대괄호([ ])를 배치하고 대괄호 안에 문자 목록을 넣습니다. 문자를 쉼표나 다른 구분 기호로 구분하지 마세요. 목록에 있는 단일 문자 중 하나가 일치하면 성공입니다.

myString가 유효한 문자 하나에 뒤이어 정확히 하나의 문자 A, C, 또는 E로 구성되어 있는지를 테스트하는 다음 예제를 보십시오.

Dim sMatch As Boolean = myString Like "?[ACE]"

이 일치 항목은 대/소문자를 구분합니다.

문자열 식의 문자를 문자 범위와 일치하려면

대괄호([ ])를 패턴 문자열에 배치하고 대괄호 안에 하이픈()으로 구분하여 범위에서 가장 낮고 가장 높은 문자를 배치합니다. 범위 내의 어떠한 단일 문자도 성공적으로 일치합니다.

myString이(가) num 문자 뒤에 정확히 i, j, k, l, m, 또는 n 문자 중 하나가 오는지 테스트하는 예제입니다.

Dim sMatch As Boolean = myString Like "num[i-m]"

이 일치 항목은 대/소문자를 구분합니다.

빈 문자열 일치

Like 는 시퀀스를 [] 길이가 0인 문자열("")로 처리합니다. 전체 문자열 식이 비어 있는지 여부를 테스트하는 데 사용할 [] 수 있지만 문자열 식의 특정 위치가 비어 있는지 테스트하는 데 사용할 수는 없습니다. 빈 위치가 테스트해야 하는 옵션 중 하나인 경우 두 번 이상 사용할 Like 수 있습니다.

문자열 식의 문자를 문자 목록 또는 문자 없음과 일치하려면

  1. 동일한 문자열 식에서 연산자를 Like 두 번 호출하고 두 호출을 Or 연산자 또는 OrElse 연산자와 연결합니다.

  2. 첫 번째 Like 절의 패턴 문자열에 대괄호([ ])로 묶인 문자 목록을 포함합니다.

  3. 두 번째 Like 절의 패턴 문자열에서 해당 위치에 문자를 배치하지 마세요.

    다음 예제에서는 7자리 전화번호 phoneNum를 테스트하며, 정확히 세 자리 숫자 다음에 공백, 하이픈(), 마침표(.) 또는 문자가 없는 상태로, 그 뒤에 정확히 네 자리 숫자가 오는지 확인합니다.

    Dim sMatch As Boolean = 
      (phoneNum Like "###[ -.]####") OrElse (phoneNum Like "#######")
    

참고하십시오