我們使用Antlr StringTemplates來控制如何輸出實體的名稱。Antlr字符串模板中的條件
基本StringTemplate的是
$名字$ $初始$ $名字$, $後綴,$度$
我想一些聰明添加到模板,這樣的逗號僅在必要時輸出,即第一個逗號僅在存在後綴或度數時輸出,而第二個逗號僅在存在後綴時輸出。
我試過下面的模板字符串位它不起作用。我想我有誤解
$名字$ $初始$ $名字$ <如果(後綴|學位)>,<ENDIF>,$後綴$ <如果(後綴)>,<ENDIF> $度$
如果它幫助我們處理使用本C#
StringTemplate stringtemplate = new Antlr.StringTemplate.StringTemplate(template.Data);
foreach (Pair<string, string> pair in dictionary)
{
if (pair.First != null && pair.Second != null)
{
stringtemplate.SetAttribute(pair.First, pair.Second);
}
}
return stringtemplate.ToString();
Damnit我知道我很接近! – 2009-10-12 07:42:48