2016-06-13 46 views
2

找不到FirstToken用于某些参考(其中包含最后的空格)。FirstToken找不到某些参考-UIMA RUTA

脚本:

DECLARE FirstToken, LastToken; 

BLOCK(InRef) Reference{}{ 
    ANY{POSITION(Reference,1) -> MARK(FirstToken)}; 
    Document{-> MARKLAST(LastToken)}; 
} 

输入文件:

1. Ferreira, F.R., Prado, S.D., Carvalho, M.C, and Kraemer, F.B. (2015). Biopower and biopolitics in the field of food and nutrition. Revista de Nutrição, 28(1), 109-119. Available at http://dx.doi.org/10.1590/1415-52732015000100010. 
2. Ali, S. (2007). Feminism and postcolonialism: Knowledge/politics. Ethnic and Racial Studies, 30(2), 191–212. 
3. Forbes, D.A., King, K.M., Kushner, K.E., Letourneau, N.L., Myrick, A.F., and Profetto-McGrath, J. (1999). Warrantable evidence in nursing science. Journal of Advanced Nursing, 29(2), 373–379. 

回答

1

开始或与看不见的东西最终也没有可见的注解。这个定义可能听起来不直观,但是对于顺序匹配是必需的。

如果某些注释开始以空格结束,则会发生这种情况。建议从注释,例如,删除/修剪这些空间,具有:

RETAINTYPE(WS); // or RETAINTYPE(SPACE, BREAK,...); 
Reference{-> TRIM(WS)}; 
RETAINTYPE; 

您也可以对以空格结尾的注释工作,如果你做可视空间:

RETAINTYPE(SPACE); 

那旁边,您也可以使用MARKLAST动作等MARKFIRST动作,而不是POSITION条件,这非常缓慢。

免责声明:我是UIMA鲁塔开发商

+0

我试图RETAINTYPE(WS); 参考{ - > TRIM(WS)}; RETAINTYPE;它的工作很好。 –