정규식 사용

GOFR에서 패턴 일치를 수행하는 방법은 와일드카드(Microsoft Office에서 사용하는 것과 동일)를 사용하는 방법과 정규식을 사용하는 방법의 두 가지입니다.

와일드카드는 더 간단하지만 기능은 제한적이므로 정규식 사용을 권장합니다. 내부적으로 GOFR은 와일드카드를 정규식으로 변환합니다.

GOFR에서 정규식을 사용하려면 여러 매개 변수 입력 페이지에서 찾을 텍스트 또는 바꿀 텍스트 상자 옆의 옵션 메뉴(OPT)를 클릭하고 “정규식”을 선택합니다. 텍스트 입력 상자의 색이 녹색으로 바뀝니다.

정규식을 사용하면 검색 패턴에 따라 결과를 변환할 수 있습니다. 예를 들어 <이름> <성> 패턴을 *<성> <이름>*으로 변환하거나 숫자 서식을 수정할 수 있습니다. 아래 링크를 꼭 살펴보십시오.

변환에 관한 도움말 파일도 준비했습니다. "와일드카드와 정규식으로 텍스트 변환"

정규식을 이해하는 데 도움이 되는 자료는 온라인에 많이 있습니다. GOFR은 .NET 정규식을 사용합니다. Microsoft의 해당 페이지가 매우 포괄적이어서 추천합니다.

https://learn.microsoft.com/dotnet/standard/base-types/regular-expression-language-quick-reference

다음은 시작하는 데 도움이 되는 기본 사항 표입니다.

Metacharacter(메타문자) Behavior(동작) Example(예)
* 앞의 문자 또는 하위 식과 0번 이상 일치합니다.
{0,}와 같습니다.
zo*는 "z"와 "zoo"와 일치합니다.
+ 앞의 문자 또는 하위 식과 1번 이상 일치합니다.
{1,}와 같습니다.
zo+는 "zo"와 "zoo"와 일치하지만 "z"와는 일치하지 않습니다.
? 앞의 문자 또는 하위 식과 0번 또는 1번 일치합니다.
{0,1}과 같습니다.
?가 다른 한정자(*, +, ?, {n}, {n,} 또는 {n,m}) 바로 뒤에 오면 일치 패턴이 비탐욕적(non-greedy)이 됩니다. 비탐욕적 패턴은 검색 대상 문자열에서 가능한 한 적게 일치합니다. 기본 탐욕적(greedy) 패턴은 검색 대상 문자열에서 가능한 한 많이 일치합니다.
zo?는 "z"와 "zo"와 일치하지만 "zoo"와는 일치하지 않습니다.
o+?는 "oooo"에서 "o" 하나와 일치하고, o+는 모든 "o"와 일치합니다.
do(es)?는 "do" 또는 "does"에서 "do"와 일치합니다.
^ 검색 대상 문자열의 시작 위치와 일치합니다. 여러 줄 옵션 (?m)을 패턴의 시작 부분에 놓으면 ^는 \n 다음 위치와도 일치합니다.
대괄호 식의 첫 문자로 사용하면 ^는 문자 집합을 부정합니다.
^\d{3}은 검색 대상 문자열의 시작 부분에 있는 숫자 3개와 일치합니다.
[^abc]는 a, b, c를 제외한 모든 문자와 일치합니다.
$ 검색 대상 문자열의 끝 위치와 일치합니다. 여러 줄 옵션 (?m)을 패턴의 시작 부분에 놓으면 $는 \n 앞 위치와도 일치합니다. \d{3}$은 검색 대상 문자열의 끝 부분에 있는 숫자 3개와 일치합니다.
. 줄 바꿈 문자 \n을 제외한 모든 한 문자와 일치합니다. \n을 포함한 모든 문자와 일치시키려면 [\s\S]와 같은 패턴을 사용하십시오. a.c는 "abc", "a1c", "a-c"와 일치합니다.
[] 대괄호 식의 시작과 끝을 표시합니다. [1-4]는 "1", "2", "3" 또는 "4"와 일치합니다. [^aAeEiIoOuU]는 모음이 아닌 모든 문자와 일치합니다.
{} 한정자 식의 시작과 끝을 표시합니다. a{2,3}은 "aa"와 "aaa"와 일치합니다.
() 하위 식의 시작과 끝을 표시합니다. 하위 식은 나중에 사용하기 위해 저장할 수 있습니다. A(\d)는 "A0"부터 "A9"까지와 일치합니다. 숫자는 나중에 사용하기 위해 저장됩니다(바꿀 텍스트에서 $1).
| 둘 이상의 항목 중 하나를 선택함을 나타냅니다. z|food는 "z" 또는 "food"와 일치합니다. (z|f)ood는 "zood" 또는 "food"와 일치합니다.
\ 다음 문자를 특수 문자, 리터럴, 역참조 또는 8진수 이스케이프로 표시합니다. \n은 줄 바꿈 문자와 일치합니다. \(는 "("와 일치합니다. \\는 "\"와 일치합니다.