论文部分内容阅读
通过前缀和后缀背英语单词是一种有效而简单的方法。市场上有多种此类书籍,但很少有电脑软件具备这种功能。正好我在学习编程,所以进行了尝试。
我的界面设计很简单,跟着《C#入门经典》,把控件拖到Form上就可以了,如图1所示。
为扩充词汇量,我找来一份四级单词词汇表,制作成enword4.txt文件。如何在电脑中保存单词?C#有字典,名为Dictionary,因此可采用<单词,单词解释>这种成对的方式保存。
版本一
如何将enword4.txt文件中的单词导入到Dictionary中?比如enword4.txt文件中单词“abandon”是下面这种格式:“abandon//vt.丢弃;放弃,抛弃”。我必须把“abandon”单独“拎”出来。很明显,找到“/”字符,前面部分就是“abandon”。
C#的string提供了这样的函数,问题很容易就被解决了。
接下来通过前缀/后缀查找单词。假设要查找以“able”结尾的单词,比如“Enable, disable”等等,C#的string也提供了判断开头和结尾的函数,分别是“StartsWith”和“EndsWith”。搜索所有的单词,使用EndsWith(“able”)判断是否以“able”结尾。
背单词软件的第一个版本就此完成,我将其命名为曦曦背单词1.0。
版本二
曦曦背单词1.0既节省了背单词的时间,又提高了学习效率,但如何查找带有常用前缀和后缀的单词,从而避免一个一个地寻找?
这就要求将常用的前缀和后缀找出,放在一个文件rule.txt里。虽然也可用string的函数去实现,但很繁琐。
C#支持正则表达式regex,因此我使用正则表达式,将前缀和后缀升华,提炼出“rule”这个概念,对第一版进行了大幅改写。学习者可输入不同的前缀和后缀,围绕词根进行词义的背诵和运用。
这种方法是否吸引你了呢?不如试一试,跟我一起轻松背单词吧。
我的界面设计很简单,跟着《C#入门经典》,把控件拖到Form上就可以了,如图1所示。
为扩充词汇量,我找来一份四级单词词汇表,制作成enword4.txt文件。如何在电脑中保存单词?C#有字典,名为Dictionary,因此可采用<单词,单词解释>这种成对的方式保存。
版本一
如何将enword4.txt文件中的单词导入到Dictionary中?比如enword4.txt文件中单词“abandon”是下面这种格式:“abandon//vt.丢弃;放弃,抛弃”。我必须把“abandon”单独“拎”出来。很明显,找到“/”字符,前面部分就是“abandon”。
C#的string提供了这样的函数,问题很容易就被解决了。
接下来通过前缀/后缀查找单词。假设要查找以“able”结尾的单词,比如“Enable, disable”等等,C#的string也提供了判断开头和结尾的函数,分别是“StartsWith”和“EndsWith”。搜索所有的单词,使用EndsWith(“able”)判断是否以“able”结尾。
背单词软件的第一个版本就此完成,我将其命名为曦曦背单词1.0。
版本二
曦曦背单词1.0既节省了背单词的时间,又提高了学习效率,但如何查找带有常用前缀和后缀的单词,从而避免一个一个地寻找?
这就要求将常用的前缀和后缀找出,放在一个文件rule.txt里。虽然也可用string的函数去实现,但很繁琐。
C#支持正则表达式regex,因此我使用正则表达式,将前缀和后缀升华,提炼出“rule”这个概念,对第一版进行了大幅改写。学习者可输入不同的前缀和后缀,围绕词根进行词义的背诵和运用。
这种方法是否吸引你了呢?不如试一试,跟我一起轻松背单词吧。