2016-09-19 56 views
1

我需要匹配两个单词表(即Wordlist1的第一个位置与Wordlist2的第一个位置)的值。将一个列表的第一个元素映射到另一个列表的第一个元素。是否可以匹配Ruta中的两个单词表

样品wordlist1:

A 
B 
E 
C 
C 

样品wordlist2:

A92.8 
B49.4 
E16.0 
C16.9 
C49.4 

首先,我需要找到文档中的Wordlist1内容,然后我需要与Wordlist2与之相匹配的(例如,与A92 .8,B with B49.4 .....)。然后我需要添加匹配的值作为feature.Is它可能吗?

WORDLIST WL1List='WL1.txt'; 

DECLARE WL1(STRING replace); 

Document{ -> MARKFAST(WL1,W1List)}; 


WORDLIST WL2='WL2.txt'; 

DECLARE WL2; 

Document{ -> MARKFAST(WL2,WL2List)}; 



//MATCH 
DECLARE MATCHED; 
Some matching process.........{->MARK(MATCHED)}; 



BLOCK(foreach) WL1{} 
{  
STRING matchrepl; 

MATCHED{->MATCHEDTEXT(matchrepl)}; 

WL1{->WL1.replace=matchrepl}; 
} 

WL1{->WL1.replace="NEED TO REPLACE"}; 

回答

1

conversion.csv:

A;A92.8 
B;B49.4 
E;E16.0 
C;C16.9 
C;C49.4 

脚本:

WORDTABLE conversion = 'conversion.csv'; 
DECLARE Annotation Conversion(STRING match); 
Document{->MARKTABLE(Conversion, 1, conversion, "match" = 2)}; 
+0

我在这个答案C的另一个后果应该同时匹配C16.9和C49.4 –

+0

这怎么可能? –

+0

对于当前的WORDTABLE实现是不可能的。你需要一些解决方案,比如两个特性,这当然不是一个好的解决方案。有计划在Ruta中提供这个解决方案。通常,在这种情况下,应用ConceptMapper而不是WORDTABLE。 –

相关问题