메인 콘텐츠로 건너뛰기
연산구문설명예제
토큰[]대괄호는 하나의 토큰을 감싸는 데 사용됩니다.[] 임의의 단어나 문장 부호.
토큰 텍스트""따옴표는 지정된 텍스트를 갖는 토큰을 나타냅니다.["Grantor"] 단어 “Grantor”를 포함한 토큰.
변수:콜론은 뒤따르는 토큰 시퀀스에 이름을 지정하는 데 사용됩니다. 참고: 변수는 해당 규칙 내에서만 사용할 수 있으며, 즉 우변이 세미콜론으로 끝날 때까지만 유효합니다.[t: "Contract"] 단어 “Contract”를 포함하는 토큰을 찾아 t 변수에 할당합니다.
레마(lemma)L"word" Lemma"word"단어 앞에 “L” 또는 “Lemma”가 붙으면, 해당 단어의 모든 형태를 검색해야 함을 의미합니다.[L"rule"] “rule”, “rules”, “ruled”, “ruling”과 같은 토큰을 모두 찾습니다.
정규식/regular expression/정규 표현식은 단일 슬래시(/)로 둘러싸입니다. Value from Regular Expression 검색 요소와 마찬가지로 PCRE2 정규 표현식 구문이 사용됩니다.`/[1]?\d:\d2\s+(([ap].m.)([AP]M))?/` 이 템플릿은 예를 들어 “2:00 p.m.”, “9:34 AM”과 같은 12시간제 시간 표기와 일치합니다.
정규식 옵션 설정/regular expression/i옵션 설정은 정규 표현식을 닫는 슬래시(/) 뒤에 붙일 수 있습니다. 예를 들어 “i” 옵션은 정규 표현식을 대소문자를 구분하지 않고 매칭하라는 의미입니다./[1]?\d:\d{2}\s+([ap]\.?m\.?)?/i 이 템플릿은 정규식의 대소문자 구분 없음 옵션을 사용해 위의 예를 단순화합니다. 12시간 형식의 시간을 찾으며, 예를 들어 “2:00 p.m.”, “9:34 AM”과 같습니다.
토큰 술어<first_in_paragraph>이 토큰은 단락의 첫 번째 토큰입니다.["Section" <first_in_paragraph>] 단어 “Section”이 문단을 시작합니다. 예를 들어, 이 토큰 바로 다음에 오는 섹션 번호를 추출하는 데 사용할 수 있습니다.
토큰 술어<punctuator>이 토큰은 문장 부호입니다.["Tenant"] [<punctuator>]{0,2} 단어 “Tenant” 뒤에는 예를 들어 닫는 대괄호와 쉼표처럼 최대 두 개까지의 구두점이 올 수 있습니다.
토큰 술어<initial_letter_capitalized>이 토큰은 대문자로 시작합니다.[L"agreement" <initial_letter_capitalized>] 이 템플릿은 “Agreement”와 “Agreements”에는 매칭되지만 “agreement”에는 매칭되지 않습니다.
토큰 술어<mixed_capitalization>이 토큰의 문자 중 일부(전부는 아님)가 대문자입니다.[L"letter" <mixed_capitalization>] 이 템플릿은 예를 들어 “Letters”와 “letteR” 등과 일치합니다.
토큰 술어<all_letters_capitalized>이 토큰은 모든 문자가 대문자입니다.[t: @NEROrganization <all_letters_capitalized>]+ 이 템플릿은 모두 대문자로 표기된 organization 개체와 일치합니다.
논리 OR``수직 막대 기호()는 대체 토큰 텍스트 또는 토큰에 대한 대체 조건을 지정하는 데 사용됩니다.`[“Lender""Co-Lender”] [“shall”] [“have”]` 이 템플릿은 “Lender shall have” 또는 “Co-Lender shall have” 두 문자열 중 하나와 일치합니다.
논리 AND공백공백은 토큰 조건들 사이의 논리 곱(AND)으로 사용됩니다.[t: "Section" <first_in_paragraph>] “Section”이라는 단어를 포함하면서 동시에 단락을 시작하는 토큰을 찾습니다.
객체 조건@object_name골뱅이 기호(”@“)는 토큰이 객체 영역 안에 포함되어 있는지 확인합니다. 다음 객체들이 지원됩니다. 개체명 인식(NER) 객체로, 특수 검색 요소로도 제공되는 동일한 유형에 “NER” 접두사가 붙은 것들: NERPerson, NEROrganization, NERAddress, NERLocation, NERDate, NERDuration, NERMoney; 검색 요소; Sentence - 텍스트 흐름의 각 문장마다 별도의 객체가 생성됩니다. Paragraph - 텍스트 흐름의 각 단락마다 별도의 객체가 생성됩니다.[t: @NEROrganization]+ ["Lender"] NEROrganization 엔티티를 포함하며 그 뒤에 키워드 “Lender”가 오는 토큰 시퀀스에 이름 t를 할당합니다. [t: @NERPerson @Preamble_Segment ]+ 머리말 세그먼트( Input field 검색 요소로 표현됨)에서 사람 이름을 찾습니다.
동일 객체 지정@object_name( same )”same”은 반복되는 토큰에서, 이 유형의 여러 객체가 아니라 동일한 객체 하나가 토큰 시퀀스에 매칭된다는 의미입니다. 객체 조건에 논리 OR을 사용하는 경우에는 “same”을 사용해서는 안 됩니다.예를 들어, 여러 사람의 이름이 연달아 나열되어 있는 경우 이들은 모두 NERPerson으로 감지됩니다. 한 번에 한 사람의 이름만 추출하려면 “same” 조건을 사용하십시오. [t: @NERPerson( same )]+ 는 처음으로 감지된 사람에게 이름 t를 할당합니다.
상대 위치@object_name( right_to( another_object )) @object_name( left_to( another_object ))”right_to”는 괄호 안에 지정된 another_object 뒤에 object_name이 위치함을 의미합니다. “left_to”는 괄호 안에 지정된 another_object 앞에 object_name이 위치함을 의미합니다.[ t: @NERAddress( same, right_to( id1 ), left_to( id2 ) )] id1과 id2 사이에 있는 NERAddress 개체를 찾습니다.
논리 OR(객체 조건에서 사용)``수직 막대 기호()는 객체 조건에서도 논리합(OR) 연산자로 사용할 수 있습니다.`[t: @NERPerson( right_to( id1 )right_to( id2 ) )]`는 id1 또는 id2 뒤에 오는 사람 이름에 t라는 이름을 할당합니다.
토큰 시퀀스공백 문자시퀀스에 있는 토큰은 공백 문자로 구분됩니다.["Grantor"] [":"] 이 템플릿은 “Grantor:“와 일치합니다. 이러한 단어들을 굳이 추출할 필요가 없더라도, 단순히 문맥을 위해 토큰으로 지정할 수 있습니다.
대체 토큰 시퀀스`[token1]([token2][token3])`수직 막대 기호()는 대체 토큰 시퀀스를 지정하는 데 사용됩니다. 둥근 괄호는 우선순위를 정의합니다.`[“will”] ([“start”]([“take”] [“place”])) [“on”]이 템플릿은 "will start on" 또는 "will take place on"이라는 두 string 중 하나와 일치합니다. 대괄호를 생략했다면, 템플릿은 "will start place on"과도 일치했을 것입니다. 대괄호는 "take place" 구가 전부 포함되거나 아예 포함되지 않도록 보장합니다. **참고:** 대안 토큰 시퀀스의 더 복잡한 실제 사례에서는 각 대안마다 별도의 규칙을 작성하는 편이 더 편리할 수 있습니다:[“will”] [“start”] [“on”] => …; [“will”] [“take”] [“place”] [“on”] => …;`
선택적 토큰[]?물음표(?)는 해당 토큰이 선택적임을 의미합니다.["Tenant"] ["."]? 단어 “Tenant” 뒤에 마침표가 따라올 수도 있습니다.
선택적 반복 토큰[]*별표(*)는 해당 토큰이 선택적이며 여러 번(0회 이상) 반복될 수 있음을 의미합니다.["Grantor"] []* ["Tenant"] 키워드 “Grantor”와 “Tenant” 사이에는 0개 이상의 임의 개수의 토큰이 있을 수 있다.
필수 반복 토큰[]+더하기 기호(+)는 해당 토큰이 최소 한 번 이상 검색되어야 하며, 반복될 수도 있음을 의미합니다.[@NERPerson]+ 사람 이름을 최소 한 번 이상, 필요하면 여러 토큰에 걸쳐 찾도록 지정합니다. 사람 이름은 보통 여러 단어로 이루어져 있기 때문입니다.
지정된 반복 횟수를 가진 토큰[]{n,} []{n,m}중괄호 안의 숫자는 해당 토큰이 n번에서 m번까지 반복되어야 함을 의미합니다. 두 번째 숫자가 지정되지 않은 경우, 토큰은 최소 n번 이상 반복되어야 합니다. 참고: 보시는 것처럼 {0,}*와 같은 의미이고, {1,}+와 같은 의미입니다.["Grantor"] []{1,3} ["Tenant"] 키워드 “Grantor”와 “Tenant” 사이에는 1개에서 3개의 토큰이 있어야 합니다. 이렇게 하면 두 키워드가 서로 너무 멀리 떨어져 있지 않도록 지정할 수 있으므로 *보다 더 유용할 수 있습니다.