一个字符编码处理小程序(一)
以前与他人合作申请了一个汉字输入法编码专利(YXY),现在决定继续在此基础上进行一些开发工作,要将它的编码拆分成前、中、后三个子串,以便作进一步的处理。
用户故事可以表达为:作为一个代码的开发人员,需要将YXY编码拆分成前、中、后三个子字符串,以便作进一步的汉字分析处理。
下面对照个人开发流程,进行开发工作:
一、 计划
估计这个任务需要多少开发时间。由于利用业余时间开发,开发时间呈现碎片化的状况;故这里只是估计纯的开发时间,大约需要两周。
二、 开发
1、 分析需求
出入内容:YXY汉字编码库(一个TXT格式文件),文件格式如:
………………..
坝 sbab
拔 srbat
跋 zbad
………………..
输出内容:
汉字 YXY 前子串 中子串 后子串
……………
坝 sbab s ba b
拔 srbat sr ba t
跋 zbad z ba d
……………
说明:1)中子串为我们常用的拼音;
2)前子串或后子串可以为空。
要求:有一个窗体界面,随时可以查询上表内容。
2、 设计文档
a) 将YXY中串(模式串——全拼编码)放入数据库;
b) 将YXY的TXT格式汉字编码库存入数据库,方便操作;
c) 将YXY拆分成前、中、后三个子串,放入数据库,形成总表(上表);
d) 给出c)的WinForm操作界面。
3、原型(XP叫spike)
a) YXY拆分
public static void Main()
{
string input = "cvaiyy";
string middle = "ai";
string pattern = middle;
string front;
string behind;
string[] substrings = Regex.Split(input, pattern); // Split on hyphens
foreach (string match in substrings)
{
Console.WriteLine("‘{0}‘", match);
}
front = substrings[0];
behind=substrings[1];
Console.WriteLine(front);
Console.WriteLine(behind);
Console.ReadKey();
}
后续,见下一篇