使用缩进从缩进的文本文件中提取文本

问题描述 投票:0回答:1

[使用Ruta,我正在尝试从文本文件中提取数据。我尝试了几种方法,但无法获得所需的确切信息。我需要从缩进的文本文件中获取借款人名称。

示例:

Borrower Name: Alice                             SSN: 000-00-000  
Co-Borrower Name:                                SSN:

我注释了借款人名称关键字和SSN关键字,但无法找出查询来获取名称。

Document{->RETAINTYPE(SPACE)};
DECLARE BorrowerKeyword, NameKeyword, BorrowerNameKeyword;
W{REGEXP("Borrower")->BorrowerKeyword};
W{REGEXP("Name")->NameKeyword};

(SPACE BorrowerKeyword SPACE NameKeyword){-> BorrowerNameKeyword};

DECLARE SSNKeyword;
W{REGEXP("SSN")->SSNKeyword};
DECLARE BorrowerNameLine;
Line{CONTAINS(BorrowerNameKeyword,10,100),
     CONTAINS(SSNKeyword,10,50)-> MARK(BorrowerNameLine)}; // Not able to annotate BorrowerNameLine


// other way but that also didn't work.
DECLARE BorrowerName;
RETAINTYPE(SPACE);
CW.ct=="Borrower" CW.ct=="Name" COLON n:W{-> CREATE(BorrowerName, "label"="Borrower Name", "value"=n.ct)};
RETAINTYPE;

请提出我错过的内容并纠正查询

uima ruta
1个回答
0
投票

尝试在使用后过滤掉SPACE,以避免任何不良影响并简化规则制定。

REMOVERETAINTYPE(SPACE);
DECLARE Borrower, Name; 
CW{REGEXP("\\bBorrower") -> Borrower} CW{REGEXP("Name") -> Name};
Borrower Name COLON n:W{-> CREATE(BorrowerName, "label"="Borrower Name", "value"=n.ct)};
© www.soinside.com 2019 - 2024. All rights reserved.