/// <summary> /// Interpreta una cadena /// </summary> internal TokenSmallCssCollection Parse(string content) { TokenizerManager tokenizer = new TokenizerManager(); // Añade las reglas de lectura tokenizer.Rules.Add(new RuleDelimited(Token.TokenType.Comment, null, new string[] { "/*" }, new string[] { "*/" }, false, false, false, false)); // ... comentarios en bloque tokenizer.Rules.Add(new RuleDelimited(Token.TokenType.Comment, null, new string[] { "//", "_" }, null, true, false, false, false)); // ... comentarios tokenizer.Rules.Add(new RuleWord(Token.TokenType.ReservedWord, null, new string[] { CompilerConstants.MixinDefinition, CompilerConstants.MixinInclude, CompilerConstants.IfDefined, CompilerConstants.Media, CompilerConstants.Import }, null, true)); // ... palabras reservadas tokenizer.Rules.Add(new RulePattern(Token.TokenType.Variable, null, CompilerConstants.Variable + "A", "A9_")); // ... definición de variables tokenizer.Rules.Add(new RuleDelimited(Token.TokenType.String, null, new string[] { "\"" }, new string[] { "\"" }, false, false, false, false)); // ... cadenas // Obtiene los tokens return(Convert(tokenizer.Parse(content))); }
private void Start() { this.Enabled = false; var data = txtWord.Text; if (string.IsNullOrEmpty(data)) { return; } if (data.Trim() == "") { return; } var tokenizer = new TokenizerManager(data); var result = tokenizer.Parse(); SetMorphologic(result); tabControl1.SelectedIndex = 1; this.Enabled = true; }
static void Main(string[] args) { var data = @"İstanbul Üsküdar'da kontrolden çıkan halk otobüsü, durakta bekleyenlere çarptı, 2'si kadın 3 kişi hayatını kaybetti. Alınan bilgiye göre Dr. Eyüp Aksoy Caddesi (Karacaahmet Mezarlığı yanındaki yol) üzerinde seyir halindeki Ataşehir-Kadıköy seferini yapan özel halk otobüsü, durağa yaklaştığı sırada İETT otobüsüyle çarpıştıktan sonra kontrolden çıkıp, otobüs durağında bekleyenlere çarptı. Durakta bekleyen yolculardan Ayşegül Erdoğan, Mustafa Erdoğan ve Perihan Çelik yaşamını yitirdi. Yaralılar Haydarpaşa Numune Eğitim ve Araştırma Hastanesi ve çevredeki hastanelere kaldırıldı. Kaza nedeniyle Dr. Eyüp Aksoy Caddesi, Üsküdar istikametine kapatıldı. Sürücüler ifadeleri alınmak üzere karakola götürülürken, kazayla ilgili soruşturmanın sürdürüldüğü öğrenildi. SEFERE DÜN BAŞLAMIŞ Bu arada İstanbul Özel Halk Otobüsü Şirketleri, kazaya neden olan otobüsün dün itibariyle hizmete başlamış yeni nesil bir araç olduğunu bildirdi. Açıklamada ""Elim kaza nedeniyle derin üzüntülerimizi ifade ederken vefat eden vatandaşlarımıza yüce Allah’tan rahmet ve mağfiret, ailesine ve akrabalarına baş sağlığı, yaralı olan vatandaşlarımıza acil şifalar temenni ediyoruz."" ifadelerine de yer verildi."; var tokenizer = new TokenizerManager(data); var result = tokenizer.Parse(); var manager = new AnalyseManager(); manager.Analyse(result); }
/// <summary> /// Interpreta una cadena /// </summary> private TokenCollection Parse(string content) { TokenizerManager tokenizer = new TokenizerManager(); // Añade las reglas de lectura tokenizer.Rules.Add(new RulePattern(Token.TokenType.Variable, null, "A", "A9_")); // ... definición de variables tokenizer.Rules.Add(new RuleDelimited(Token.TokenType.String, null, new string[] { "\"" }, new string[] { "\"" }, false, false, false, false)); // ... cadenas tokenizer.Rules.Add(new RuleDelimited(Token.TokenType.UserDefined, (int)TokenSubType.Date, new string[] { "#" }, new string[] { "#" }, false, false, false, false)); // ... fechas tokenizer.Rules.Add(new RuleDelimited(Token.TokenType.UserDefined, (int)TokenSubType.Variable, new string[] { "{{" }, new string[] { "}}" }, false, false, false, false)); // ... contenido de variable tokenizer.Rules.Add(new RulePattern(Token.TokenType.Number, null, "9", "9.")); // ... definición de números tokenizer.Rules.Add(new RuleWordFixed(Token.TokenType.ArithmeticOperator, null, new string[] { "+", "-", "*", "/", "%" })); tokenizer.Rules.Add(new RuleWordFixed(Token.TokenType.LogicalOperator, null, new string[] { "<", ">", ">=", "<=", "==", "!=" })); tokenizer.Rules.Add(new RuleWordFixed(Token.TokenType.RelationalOperator, null, new string[] { OrOperator, AndOperator, NotOperator } )); // tokenizer.Rules.Add(new RuleWordFixed(Token.TokenType.Equal, null, new string[] { "=" })); tokenizer.Rules.Add(new RuleWordFixed(Token.TokenType.LeftParentesis, null, new string[] { "(" })); tokenizer.Rules.Add(new RuleWordFixed(Token.TokenType.RightParentesis, null, new string[] { ")" })); // tokenizer.Rules.Add(new RuleWordFixed(Token.TokenType.EndInstruction, null, new string[] { ";" })); // tokenizer.Rules.Add(new RuleWordFixed(Token.TokenType.StartBlock, null, new string[] { "{" })); // tokenizer.Rules.Add(new RuleWordFixed(Token.TokenType.EndBlock, null, new string[] { "}" })); // Obtiene los tokens return(tokenizer.Parse(content)); }