2013-04-30 59 views
0

那麼我使用lex來查找標記。我想獲得標記類之後的標識符標記的值,我該如何做。找到一個特定的標記

例如,我的函數應該返回類標記後的標識符。有沒有辦法做到這一點?

由Lex genrated詞法標記如下所示: -

 LexToken(SEMICOLON,';',15,125) 
    LexToken(RETURN,'return',16,127) 
    LexToken(SEMICOLON,';',16,134) 
    LexToken(RCURLY,'}',17,136) 
    LexToken(CLASS,'class',20,140) 
    LexToken(IDENTIFIER,'animal',20,146) 

給令牌作爲這種輸入流之後發揮作用,它應該返回「動物」,因爲它下面標記「標識」的價值「類'令牌。

回答

1
while True: 
    tok = lexer.token() 
    if not tok: break  # No more input 
    print tok.type, tok.value, tok.line, tok.lexpos 
if flag==1: 
    flag=0 
    print tok.value  # here u get the value. 
if tok.type=='CLASS': 
    flag=1 
相關問題