如何在不使用分割的情况下从c#文本文件中分割操作符,标识符,字符串等

本文关键字:分割 文件 文本 操作符 标识符 字符串 情况下 | 更新日期: 2023-09-27 18:11:32

我正在使用c#为编译器构造课程制作词法分析器。我正在从记事本文件中输入信息。请告诉我如何打破数据类型,操作符,标识符等从文本文件,并保存在数组或列表中那些破碎的话。然后我将通过标识符、数据类型等的Dfa来验证这些单词,然后我将生成令牌。

这是我的foreach循环,我想在其中传递数组或列表中的单词。

//x will be string of datatypes,keyword,identifiers etc of my language.
//richTextBox1.Lines will be replaced by that array or list which I will create.
foreach (string x in richTextBox1.Lines)
{
    //code for validating
}

如何在不使用分割的情况下从c#文本文件中分割操作符,标识符,字符串等

您要做的是从一组文本构造一个表达式树。我不能给你一个完整的答案(因为你的问题是关于技术的,而不是技术问题),但是如果你通过。net中的表达式树链接,然后研究。net中的其他表达式树构建库(有一个内置的c#解析器,一个可用的Microsoft T-SQL解析器),那么这将给你一个很好的起点。

http://blogs.msdn.com/b/charlie/archive/2008/01/31/expression-tree-basics.aspx