public void TestWordLibrary2String() { ParsePattern parser = new ParsePattern() { IsPinyinFormat = true, CodeSplitType = BuildType.FullContain, CodeSplitString = ",", ContainCode = true, ContainRank = true, SplitString = "|", CodeType = CodeType.Pinyin, Sort = new List <int>() { 2, 1, 3 } }; WordLibrary wl = new WordLibrary() { Word = "深蓝", Rank = 123, CodeType = CodeType.Pinyin }; wl.Codes = new Code(); wl.Codes.Add(new[] { "shen" }); wl.Codes.Add(new[] { "lan" }); selfDefining.UserDefiningPattern = parser; var str = selfDefining.ExportLine(wl); Assert.AreEqual(str, "深蓝|,shen,lan,|123"); }
public void TestGeneratePinyinThen2String() { ParsePattern parser = new ParsePattern() { IsPinyinFormat = true, CodeSplitType = BuildType.FullContain, CodeSplitString = "~", ContainCode = true, ContainRank = true, SplitString = "|", CodeType = CodeType.Pinyin, LineSplitString = "\r", Sort = new List <int>() { 2, 1, 3 } }; WordLibraryList wll = new WordLibraryList(); WordLibrary wl = new WordLibrary() { Word = "深蓝", Rank = 123, CodeType = CodeType.UserDefine }; wl.Codes = new Code(); wl.Codes.Add(new[] { "sn" }); wl.Codes.Add(new[] { "ln" }); wll.Add(wl); selfDefining.UserDefiningPattern = parser; var str = selfDefining.Export(wll); Assert.AreEqual(str, "深蓝|~shen~lan~|123\r"); }
public void TestPinyinString2WL() { ParsePattern parser = new ParsePattern() { IsPinyinFormat = true, CodeSplitType = BuildType.FullContain, CodeSplitString = ",", ContainCode = true, ContainRank = true, SplitString = " ", Sort = new List <int>() { 2, 1, 3 } }; var str = "深蓝 ,shen,lan, 1"; var selfDefining = new SelfDefining(); selfDefining.UserDefiningPattern = parser; var wl = selfDefining.ImportLine(str)[0]; Assert.AreEqual(wl.Codes[0][0], "shen"); Assert.AreEqual(wl.Codes[1][0], "lan"); Assert.AreEqual(wl.Rank, 1); }
public void TestExportPinyinDifferentFormatWL() { var p = new ParsePattern(); p.Sort = new List <int>() { 3, 2, 1 }; p.SplitString = "$"; p.ContainRank = false; p.CodeSplitString = "_"; p.CodeSplitType = BuildType.None; p.IsPinyinFormat = true; p.CodeType = CodeType.Pinyin; var selfDefining = new SelfDefining(); selfDefining.UserDefiningPattern = p; Console.WriteLine("CodeType:" + selfDefining.UserDefiningPattern.CodeType.ToString()); var str1 = selfDefining.Export(new WordLibraryList() { WlData }); Console.WriteLine(str1[0]); Assert.AreEqual(str1[0], "深蓝测试$shen_lan_ce_shi\r\n"); }
private void InitParsePattern() { SelectedParsePattern = new ParsePattern(); SelectedParsePattern.ContainRank = true; SelectedParsePattern.ContainCode = true; SelectedParsePattern.CodeSplitString = ","; SelectedParsePattern.CodeSplitType = BuildType.None; SelectedParsePattern.Sort = new List<int> {1, 2, 3}; SelectedParsePattern.SplitString = " "; ShowSample(); }
private ParsePattern InitPattern() { ParsePattern pp = new ParsePattern(); pp.MutiWordCodeFormat = @"code_e2=p11+p12+p21+p22 code_e3=p11+p21+p31+p32 code_a4=p11+p21+p31+n11"; pp.IsPinyinFormat = false; pp.ContainRank = false; pp.SplitString = " "; pp.ContainCode = true; return(pp); }
public void TestImportTxt() { string txt = "深藍 shen,lan 12345"; var pp = new ParsePattern(); pp.Sort = new List <int>() { 2, 1, 3 }; pp.IsPinyinFormat = true; pp.CodeType = CodeType.Pinyin; pp.CodeSplitString = ","; pp.SplitString = " "; pp.CodeSplitType = BuildType.None; selfDefining.UserDefiningPattern = pp; var x = selfDefining.ImportLine(txt); Debug.WriteLine(x[0].ToString()); Assert.IsNotNullOrEmpty(x[0].Word, "深藍"); }
public void TestPinyinString2WL() { ParsePattern parser = new ParsePattern() { IsPinyin = true, CodeSplitType = BuildType.FullContain, CodeSplitString = ",", ContainCode = true, ContainRank = true, SplitString = " ", Sort = new List <int>() { 2, 1, 3 } }; var wl = parser.BuildWordLibrary("深蓝 ,shen,lan, 1"); Assert.AreEqual(wl.PinYin[0], "shen"); Assert.AreEqual(wl.PinYin[1], "lan"); Assert.AreEqual(wl.Count, 1); }
private void cbxTo_SelectedIndexChanged(object sender, EventArgs e) { if (cbxTo.Text == ConstantString.SELF_DEFINING) //弹出自定义窗口 { var selfDefining = new SelfDefiningConverterForm(); selfDefining.IsImport = false; DialogResult show = selfDefining.ShowDialog(); if (show != DialogResult.OK) { cbxFrom.SelectedText = ""; return; } else //选了自定义 { toUserSetPattern = selfDefining.SelectedParsePattern; } } if (cbxTo.Text == ConstantString.XIAOXIAO) { var diag = new XiaoxiaoConfigForm(); if (diag.ShowDialog() == DialogResult.OK) { toCodeType = diag.SelectedCodeType; } } if (cbxTo.Text == ConstantString.RIME) { var diag = new RimeConfigForm(); if (diag.ShowDialog() == DialogResult.OK) { toCodeType = diag.SelectedCodeType; } } }
//private void btnExport_Click(object sender, EventArgs e) //{ // if (MessageBox.Show("是否将文本框中的所有词条保存到本地硬盘上?", "是否保存", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == // DialogResult.Yes) // { // saveFileDialog1.DefaultExt = ".txt"; // if (cbxTo.Text == ConstantString.MS_PINYIN) // { // saveFileDialog1.DefaultExt = ".dctx"; // } // if (saveFileDialog1.ShowDialog() == DialogResult.OK) // { // if (FileOperationHelper.WriteFile(saveFileDialog1.FileName, export.Encoding, richTextBox1.Text)) // { // ShowStatusMessage("保存成功,词库路径:" + saveFileDialog1.FileName, true); // } // else // { // ShowStatusMessage("保存失败", false); // } // } // } //} private void cbxFrom_SelectedIndexChanged(object sender, EventArgs e) { if (cbxFrom.Text == ConstantString.SELF_DEFINING) //弹出自定义窗口 { var selfDefining = new SelfDefiningConverterForm(); DialogResult show = selfDefining.ShowDialog(); if (show != DialogResult.OK) { cbxFrom.SelectedText = ""; return; } else //选了自定义 { fromUserSetPattern = selfDefining.SelectedParsePattern; } } if (cbxFrom.Text == ConstantString.XIAOXIAO) { var diag = new XiaoxiaoConfigForm(); if (diag.ShowDialog() == DialogResult.OK) { fromCodeType = diag.SelectedCodeType; } } if (cbxFrom.Text == ConstantString.RIME) { var diag = new RimeConfigForm(); if (diag.ShowDialog() == DialogResult.OK) { fromCodeType = diag.SelectedCodeType; } } if (cbxFrom.Text == ConstantString.LINGOES_LD2) { var diag = new Ld2EncodingConfigForm(ld2WordEncoding); if (diag.ShowDialog() == DialogResult.OK) { ld2WordEncoding = diag.SelectedEncoding; } } }
private void btnHelpBuild_Click(object sender, EventArgs e) { var builder = new HelpBuildParsePatternForm(); if (builder.ShowDialog() == DialogResult.OK) { SelectedParsePattern = builder.SelectedParsePattern; txbParsePattern.Text = SelectedParsePattern.BuildWLStringSample(); } }