public void RemoveQuotesLines() { List <Token> newTokens = new List <Token>(); for (int i = 0; i < tokens.Count; i++) { Token t = tokens[i]; if (t.Word == "\"") { TokenChainCollection chains = t.Chains; foreach (TokenChain c in chains.Chains) { if (c.ChainPosition == TokenChainPosition.Close) { tokens[i - 1].AddTokenChain(c.ChainNumber, c.ChainPosition); // move to previous token } else if (c.ChainPosition == TokenChainPosition.Open) { tokens[i + 1].AddTokenChain(c.ChainNumber, c.ChainPosition); // move to next token } else { throw new Exception("Unexpected chain position"); } } } else { newTokens.Add(t); } } tokens = newTokens; }
public Token(string line) { tokens = new string[8]; string[] columns = line.Split('\t'); Array.Copy(columns, this.tokens, 8); Chains = new TokenChainCollection(columns[8]); }