2017-11-11 4 views
1

정규 표현식과 사전 토큰을 사용하여 주석을 표시해야합니다. 여기 내 규칙이있다UIMA에서 주석을 만들기위한 사전의 토큰과 REGEXP의 사용

ANY {REGEXP ("new"), Book.names.ct == "개인 도서"-> MARK (NewPersonalBook)};

다음과 같은 입력 작업을하는

:

을 programm 코드에 오류를 보여줍니다 새 개인 책을 열

  1. 새로운 개인 책 응용 프로그램
  2. 하지만 그렇지 않습니다 입력에 대한 주석 "NewPersonalBook"을 표시하십시오. 어떻게 문제를 해결할 수 있습니까? 나는 당신의 사건을 이해하지만 난 당신이 내가 내 텍스트 예를
    personal book, nicebook

    그런 다음 단어 목록을 생성

    뭘 하려는지 복제하려고하면

+1

문제는 ANY 유형의 일치 주석과 동일한 오프셋을 사용하여 Book 유형의 주석을 해결하려고하는 두 번째 조건 일 수 있습니다. Textspan "new"가 아닌 경우 Book 어노테이션이 더 클 것입니다. 따라서 조건이 일치하지 않습니다. 예제를 확장 할 수 있습니까? 아마도 다음과 같은 것이 가능할 것이다 :'b : Book {b.names.ct == "개인 서적", REGEXP (. * new. *) -> NewPersonalBook} –

답변

0

는 잘 모르겠어요

new personal book application. open a new personal book. my new nicebook is nice.

당신이 "새로운"단어 위스콘신 싶지 않는 경우 스크립트

 
WORDLIST BooksList = 'books.txt'; 

DECLARE Book, NewBook; 

Document{-> MARKFAST(Book, BooksList)}; 
W{REGEXP("new")} Book.ct == "personal book" {-> MARK(NewBook, 1, 2)}; //if you want to test a specific text 
W{REGEXP("new")} Book {-> MARK(NewBook, 1, 2)}; //this will annotate NewBook for a books with the word new before it 

정수 매개 변수를 제거해야하는 주석 (첫 번째로 일치하는 텍스트 "new"및 두 번째는 책 텍스트 임)

면책 조항 : UIMA RUTA를 처음 접하시는 분께 도움이 되었기를 바랍니다.