정규식 예제

인식 특성을 정규식이나 숫자 범위로 바꾸어 패턴 기반의 인지를 허용할 수 있습니다. 패턴에서는 오브젝트 인지 시 좀 더 많은 유연성이 부여됩니다. 검증 포인트 편집기 또는 오브젝트 맵에서 특성을 정규식과 숫자 범위로 변환할 수 있습니다.

정규식 사용에 대한 정보는 정확한 일치 특성을 패턴으로 바꾸기를 참조하십시오.

값을 정규식으로 변환할 때, 정규식 평가기를 사용하여 이를 편집하는 동안 테스트할 수 있습니다.

정규식 구문 예제

다음은 정규식에서 사용되는 일반 사용 케이스의 예제입니다.

앵커링

일반 예제로 시작하는 다음 예제 모두는 앵커되지 않습니다. 정규식 평가기의 패턴은 기본적으로 앵커되지 않습니다. 이는 패턴이 문자열의 어디에서나 표시될 수 있음을 의미합니다. 문자열에는 기타 다른 문자도 포함될 수 있습니다. 앵커링은 검색 기능이 대부분의 소프트웨어 프로그램에서 작업하는 방식으로 동작합니다. 자체 또는 다른 텍스트에 들어 있는 텍스트를 검색합니다. 앵커하려면 다음 구문을 사용하십시오.

^ string$

"^"와 "$"는 문자열에 있는 문자를 앵커합니다. 문자열의 시작과 끝에 표시된 경우 "^"는 문자열의 시작을 표시하고, "$"는 끝을 표시합니다. "^" 문자는 패턴에서 첫 번째 문자인 경우에만 이러한 특수 의미를 가지며, "$"는 패턴에서 마지막 문자인 경우에만 이러한 의미를 갖습니다.

예를 들어, 특성 값에 특정 문자열이 있는지를 확인하려는 경우, 이를 앵커했는지 확인하십시오. 고객이 한 번만 주문하는 경우 주문 양식의 레이블은 "Order"이고 고객이 여러 번 주문한 경우는 "Orders"일 경우, 이 고객이 한 번만 주문했는지 확인하려 합니다. 레이블의 텍스트 특성에서 값을 정규식으로 변경하십시오.

^Order$

이 경우, "Order"가 일치하는 유일한 값입니다. "Orders"는 일치하지 않습니다.

일반 예제

메모장

메모장 등의 응용프로그램이 열려 있는지 판별한다고 가정합니다. 캡션 특성에서 정규식을 사용하여 단어 "Notepad"가 배너에 표시되는지 확인할 수 있습니다. 이 패턴에서는 "Notepad" 단어가 값의 어느 위치에나 표시되어야 합니다. 캡션의 텍스트 특성이 "Report.txt - Notepad"(즉, Notepad가 Report.txt 파일에서 열려 있음)인 경우, 패턴에는 문자열 "Notepad"가 있으므로 일치합니다.

기본 동작은 좀 더 큰 문자열 내에 들어 있는 값과 일치시키는 것입니다. 독점 문자 세트를 일치시키려면, 위에서 설명한 앵커링 태그를 사용하십시오.

대소문자 인지

[cC]ustomer

이 패턴에서는 c의 대소문자에 관계없이 "customer" 단어가 들어 있는 모든 텍스트가 허용됩니다. 비교에서는 기본적으로 대소문자가 구분되므로 이 기능이 중요합니다.

정규식 평가기에서 대소문자 구분에 대한 옵션을 설정할 수 있습니다. 대소문자 구분 일치 수행 옵션은 기본이고, 일치는 대소문자를 구분하므로 표시된 이 예제는 매우 유용합니다. 대소문자를 구분 안하려면, 선택란을 지우십시오. 또한 오브젝트 객체의 인터페이스나 검증 포인트 편집기 또는 비교기에서 대소문자 구분을 설정할 수도 있습니다. 해당 도구에서 정규식 값을 마우스 오른쪽 단추로 클릭하면, 바로 가는 메뉴에서 대소문자 구분 정규식을 누를 수 있습니다.

단일 문자

payment.method

"."을 사용하여 문자열에서 단일 문자를 표시합니다. 문자와 기타 법률 문자 이외에도 문자는 공백이나 숫자가 될 수 있습니다. 이 경우, "payment method"와 "payment0method" 모두가 일치합니다.

0개 또는 그 이상의 반복 문자

fo*bar

"*" 문자를 사용하여 임의 개수의 이전 문자 또는 0개의 문자를 표시합니다. 이 예제에서 "fbar", "fobar", "foobar" 및 "fooooobar"가 해당됩니다.

하나 이상의 반복 문자

fo+bar

"+" 문자를 사용하여 임의 개수의 이전 문자를 표시합니다. 이 문자와 "*" 문자의 차이점은 "+"에서는 적어도 하나의 문자가 있어야 한다는 것입니다. 그러므로 "fbar"은 이 패턴과 일치하지 않지만 "fobar", "foobar" 및 "fooooobar"은 일치합니다.

0개 또는 1개의 반복 문자

fo?bar

이 패턴은 기호 앞에 문자가 없거나 1개 문자가 있음을 의미합니다. 두 문자열만이 이 구문에 일치합니다: "fbar" 및 "fobar".

와일드 카드

Customer.*Order

와일드 카드 일치에 "." 및 "*" 문자를 사용합니다. 이 패턴에서는 임의 개수의 임의 문자가 표시될 수 있습니다. 예를 들어, 응용프로그램이 때때로 이 특성에 있는 두 단어 사이에 공간을 삽입하는 경우, 이 구문은 두 경우 모두를 담당합니다.

세트 중 임의 1개 문자

Form[ABC]

이 패턴에서는 "Form" 단어 다음에 대괄호 내에 있는 문자 중 일치하는 문자가 올 수 있습니다. 응용프로그램에 있는 필드에서 사용된 양식을 나열하는 경우, 이 정규식을 사용하여 다음 문자열을 일치시킬 수 있습니다: "FormA", "FormB" 또는 "FormC".

세트 중 임의 개수의 문자

Form[ABC]*

이는 대괄호 내의 문자 중 하나가 임의 개수만큼 "Form" 단어 뒤에 올 수 있으며 이 정규식에 일치함을 의미합니다. 응용프로그램 필드에서 사용된 양식을 나열하는 경우, 위 예제에서는 "FormA", "FormB" 또는 "FormC"가 해당됩니다. 뿐만 아니라, "FormAA" 또는 "FormCCC" 등 한 문자가 여러 번 반복될 수 있고, "Form"도 가능합니다.

한 문자는 제외

Form[^BE]

이 구문에서는 "Form" 단어 다음에 "B"나 "E"를 제외한 임의 문자가 오면 일치됩니다. 예를 들어, "FormA", "FormC" 및 "FormG"는 해당되지만, "FormB" 또는 "FormE"는 해당되지 않습니다.

영숫자 세트

Form[A-G]

연속 문자 범위를 지정할 수 있습니다. 여기 구문에서 "FormA", "FormB", "FormC", "FormD", "FormE", "FormF" 및 "FormG"는 해당되지만, "FormH" 또는 "FormM"은 해당되지 않습니다. 영숫자 범위에서는 대소문자가 구분됩니다. "Forma"는 해당되지 않습니다. 이 구문을 사용하여 이 범위에서 대문자와 소문자를 일치시키십시오: "Form[a-gA-G]". 표준 영문자에 있는 모든 문자를 일치시키려면, 두 케이스 모두에 대해 전체 범위를 사용합니다: "Form[a-zA-Z]".

논리적 OR

OK|Cancel

대화 상자에 세 개의 단추 즉 확인, 취소 및 도움말이 있을 수 있습니다. 올바른 단추를 눌렀는지 확인하려면, 단추 레이블 특성에 정규식을 사용하십시오. 확인이나 취소를 클릭하고 도움말은 클릭하지 않았음을 확인할 때 이 구문을 사용할 수 있습니다.

그룹 표현식

My (purple|blue|green) kite

그룹에 있는 모든 요소에 대해 작동하려면 그룹 표현식을 사용하십시오. 예를 들어, 연산자를 그룹에 적용하거나 그룹 각 구성원의 앞이나 뒤에서 특정 문자열을 찾으려는 경우, 그룹 표현식을 사용할 수 있습니다. 괄호는 그룹핑 연산자이고, "|"는 요소를 구분하기 위해 사용됩니다. 이 예제에서는 "My purple kite", "My blue kite" 및 "My green kite"가 표현식에 일치합니다. "My red kite" 또는 "My kite"는 일치하지 않습니다.

문자 클래스

정규식에서 임의 개수의 문자 클래스를 사용할 수 있습니다.

(하나의 공백 문자, 예: 공간, 탭, 줄 바꾸기 또는 캐리지 리턴)

영어 이외의 언어 문자와 일치합니다.

순서 번호와 일치하도록 할 수도 있습니다. 예를 들어, 다음과 같습니다.

Order\d

이 구문은 뒤에 1자리 숫자가 오는 "Order" 단어와 일치합니다. "Order" 단어만으로는 일치하지 않습니다. 이러한 예로는 "Order5", Order3" 및 "Order0"이 해당합니다. "Order 3"은 일치하지 않습니다.

Order\d+

하나 이상의 숫자를 사용하려면, 이 패턴을 사용하십시오. \d+는 하나 이상의 숫자를 의미합니다. 예를 들어, "Order77"과 "Order235"는 이 패턴에 일치합니다.

Form\S

공간을 제외한 임의 문자가 뒤에 오는 "Form" 단어가 일치합니다. 응용프로그램에 있는 양식 레이블에 양식을 표시하는 문자가 있는지 확인해야 하는 경우, "Form" 단어 다음에 아무 문자가 없는 경우는 일치하지 않으므로 이에 해당하는지를 테스트합니다. 예를 들어, "FormB"와 "FormX"는 일치합니다. "Form"과 "Form "은 일치하지 않습니다.

기타 다른 문자 클래스도 이 예제에서와 동일한 방식으로 작동합니다.

특수 문자

이 예제에서는 일정 특수 문자를 사용합니다. 이러한 문자는 정규식에서 리터럴 문자로 읽지 않고 연산자로 읽습니다. 여기에는 다음 문자가 포함됩니다.

정규식에 이러한 문자를 사용하는 경우, 문자 앞에 "\" 문자를 삽입하여 구분해야 합니다. 예를 들어, 레이블 텍스트에 괄호를 사용해야 하는 경우, 이 텍스트 특성은 다음과 같습니다:

Orders \(shipped\)

이 경우 레이블 "Orders (shipped)"은 일치합니다. 검증 포인트 편집기나 오브젝트 맵에서 값을 정규식으로 변환할 때, 원래 값에 이러한 문자가 포함되어 있으면, Functional Tester는 문자들을 구분합니다.

관련 개념
정규식 평가기
관련 태스크
정확한 일치 특성을 패턴으로 바꾸기

피드백