static void SimplifyPinYinWords(HashSet <PinYinWords> pyws, List <PinYinWords> list, int length) { foreach (var item in pyws) { var w = item.Words; if (w.Length != length) { continue; } foreach (var pyw in pyws) { if (pyw.Words.Length >= length) { continue; } w = w.Replace(pyw.Words, pyw.PinYins); } var py = WordsHelper.GetPinYinFast(w).ToLower().Replace("'", ""); var py1 = item.PinYins.Replace("'", ""); if (py != py1) { list.Add(item); } } }
/// <summary> /// Generate a Number of Paragraphs /// </summary> /// <param name="Kind"></param> /// <param name="ParagraphsNumber"></param> /// <param name="Language"></param> /// <returns></returns> public static string GenerateParagraphs(Kinds Kind, int ParagraphsNumber, Languages Language = Languages.English) { //Se il numero di paragrafi è minore di 1 torno vuoto if (ParagraphsNumber < 1) { return(""); } int minWordsInParagraph = 70; int maxWordsInParagraph = 110; string resp = String.Empty; for (int i = 0; i < ParagraphsNumber; i++) { if (resp != String.Empty) { resp = resp + Environment.NewLine + Environment.NewLine + WordsHelper.FirstCharToUpper(GenerateText(Kind, random.Next(minWordsInParagraph, maxWordsInParagraph), Language)); } else { //primo passaggio, non metto il separatore resp = resp + WordsHelper.FirstCharToUpper(GenerateText(Kind, random.Next(minWordsInParagraph, maxWordsInParagraph), Language)) + "."; } } return(resp); }
public string Translate(string content) { if (_settings.ShouldUsePinyin) { if (!_pinyinCache.ContainsKey(content)) { if (WordsHelper.HasChinese(content)) { var resultList = WordsHelper.GetPinyinList(content); StringBuilder resultBuilder = new StringBuilder(); for (int i = 0; i < resultList.Length; i++) { if (content[i] >= 0x3400 && content[i] <= 0x9FD5) { resultBuilder.Append(resultList[i].First()); } } resultBuilder.Append(' '); bool pre = false; for (int i = 0; i < resultList.Length; i++) { if (content[i] >= 0x3400 && content[i] <= 0x9FD5) { resultBuilder.Append(' '); resultBuilder.Append(resultList[i]); pre = true; } else { if (pre) { pre = false; resultBuilder.Append(' '); } resultBuilder.Append(resultList[i]); } } return(_pinyinCache[content] = resultBuilder.ToString()); } else { return(content); } } else { return(_pinyinCache[content]); } } else { return(content); } }
public string Translate(string content) { if (_settings.ShouldUsePinyin) { var result = _cache[content] as string; if (result == null) { if (WordsHelper.HasChinese(content)) { result = WordsHelper.GetFirstPinyin(content); } else { result = content; } var policy = new CacheItemPolicy(); policy.SlidingExpiration = new TimeSpan(12, 0, 0); _cache.Set(content, result, policy); } return(result); } return(content); }
static void SimplifyPinYin(List <Tuple <string, string> > list, HashSet <PinYinWords> pyws, int length) { foreach (var item in list) { if (item.Item1.Length != length) { continue; } var w = item.Item1; foreach (var pyw in pyws) { if (pyw.Words.Length >= length) { continue; } w = w.Replace(pyw.Words, pyw.PinYins); } var py = WordsHelper.GetPinYinFast(w).ToLower().Replace("'", ""); var py1 = item.Item2.Replace("'", ""); if (py != py1) { PinYinWords p = new PinYinWords() { Words = item.Item1, PinYins = item.Item2 }; pyws.Add(p); } } }
/// <summary> /// 根据汉字首字母,获取相应的颗粒大类名称 /// </summary> public void ChineseChar() { foreach (var granuleType in AllGranuleTypeGroup) { if (WordsHelper.GetFirstPinYin(granuleType).Contains(ResultStr)) { ResultList.Add(granuleType); } } // 搜索结果只有一个 if (ResultList.Count == 1) { ShowGranuleType = ResultList[0]; } // 搜索结果大于1的在 SetGranuleName() 函数里判断 // 没搜到 if (ResultList.Count == 0) { WindowTips("未找到结果,请重新搜索"); ResultStr = string.Empty; } }
public void GetPinyin() { var t = WordsHelper.GetAllPinyin('芃'); Assert.AreEqual("Peng", t[0]); var b = WordsHelper.GetPinyin("摩擦棒"); Assert.AreEqual("MoCaBang", b); b = WordsHelper.GetPinyin("秘鲁"); Assert.AreEqual("BiLu", b); b = WordsHelper.GetPinyin("天行"); Assert.AreEqual("TianXing", b); var py = WordsHelper.GetPinyin("快乐,乐清"); Assert.AreEqual("KuaiLe,YueQing", py); py = WordsHelper.GetPinyin("快乐清理"); Assert.AreEqual("KuaiLeQingLi", py); py = WordsHelper.GetPinyin("我爱中国"); Assert.AreEqual("WoAiZhongGuo", py); py = WordsHelper.GetPinyin("我爱中国", ","); Assert.AreEqual("Wo,Ai,Zhong,Guo", py); py = WordsHelper.GetPinyin("我爱中国", true); Assert.AreEqual("WǒÀiZhōngGuó", py); py = WordsHelper.GetFirstPinyin("我爱中国"); Assert.AreEqual("WAZG", py); var pys = WordsHelper.GetAllPinyin('传'); Assert.AreEqual("Chuan", pys[0]); Assert.AreEqual("Zhuan", pys[1]); py = WordsHelper.GetPinyinForName("单一一"); Assert.AreEqual("ShanYiYi", py); py = WordsHelper.GetPinyinForName("单一一", ","); Assert.AreEqual("Shan,Yi,Yi", py); py = WordsHelper.GetPinyinForName("单一一", true); Assert.AreEqual("ShànYīYī", py); py = WordsHelper.GetPinyinForName("张丽莎", false); Assert.AreEqual("ZhangLiSha", py); py = WordsHelper.GetPinyinForName("孟露", false); Assert.AreEqual("MengLu", py); WordsHelper.ClearCache(); }
public string Translate(string content) { if (_settings.ShouldUsePinyin) { if (!_pinyinCache.ContainsKey(content)) { if (WordsHelper.HasChinese(content)) { var result = WordsHelper.GetPinyin(content, ";"); result = GetFirstPinyinChar(result) + result.Replace(";", ""); _pinyinCache[content] = result; return(result); } else { return(content); } } else { return(_pinyinCache[content]); } } else { return(content); } }
private string ValidateWord(string str) { if (!WordsHelper.IsValidWord(str)) { return("Please enter a word"); } return(string.Empty); }
public void ToSBC_ToDBC() { var s = WordsHelper.ToSBC("abcABC123"); var t = WordsHelper.ToDBC(s); Assert.AreEqual("abcABC123", s); Assert.AreEqual("abcABC123", t); }
private static string GetAllPinyinInternal(string source, string separator, bool tone) { if (string.IsNullOrEmpty(source)) { return(""); } return(string.Join(separator, WordsHelper.GetAllPinyin(source[0], tone))); }
public async void AddSynonymsAsync() { ShowProgress = true; var synonyms = WordsHelper.GetWords(SynonymsValidation.Value); await Task.Run(() => _thesaurus.AddSynonyms(synonyms)); ShowProgress = false; SynonymsValidation.Value = string.Empty; }
public void GetPinYin() { var list = WordsHelper.GetAllPinYin('㘄'); list = WordsHelper.GetAllPinYin('䉄'); list = WordsHelper.GetAllPinYin('䬋'); list = WordsHelper.GetAllPinYin('䮚'); list = WordsHelper.GetAllPinYin('䚏'); list = WordsHelper.GetAllPinYin('㭁'); list = WordsHelper.GetAllPinYin('䖆'); }
/// <summary> /// 获取拼音 /// </summary> /// <param name="source"></param> /// <param name="separator"></param> /// <param name="tone"></param> /// <param name="forName"></param> /// <returns></returns> private static string GetPinyinInternal(string source, string separator, bool tone, bool forName) { if (forName) { return(WordsHelper.GetPinyinForName(source, separator, tone)); } else { return(WordsHelper.GetPinyin(source, separator, tone)); } }
static void Main(string[] args) { var stopwatch = System.Diagnostics.Stopwatch.StartNew(); var r = WordsHelper.GetPinyin("我爱中国"); stopwatch.Stop(); var s = stopwatch.ElapsedMilliseconds; Console.WriteLine("拼音第一次加载用时(ms):" + s); PetaTest.Runner.RunMain(args); }
public void GetPinYin() { var t = WordsHelper.GetAllPinYin('芃'); Assert.AreEqual("Peng", t[0]); var a = WordsHelper.GetPinYinFast("阿"); Assert.AreEqual("A", a); var b = WordsHelper.GetPinYin("摩擦棒"); Assert.AreEqual("MoCaBang", b); b = WordsHelper.GetPinYin("秘鲁"); Assert.AreEqual("BiLu", b); var py = WordsHelper.GetPinYinFast("我爱中国"); Assert.AreEqual("WoAiZhongGuo", py); py = WordsHelper.GetPinYin("快乐,乐清"); Assert.AreEqual("KuaiLe,YueQing", py); py = WordsHelper.GetPinYin("快乐清理"); Assert.AreEqual("KuaiLeQingLi", py); py = WordsHelper.GetPinYin("我爱中国"); Assert.AreEqual("WoAiZhongGuo", py); py = WordsHelper.GetPinYin("我爱中国", true); Assert.AreEqual("WǒÀiZhōngGuó", py); py = WordsHelper.GetFirstPinYin("我爱中国"); Assert.AreEqual("WAZG", py); var pys = WordsHelper.GetAllPinYin('传'); Assert.AreEqual("Chuan", pys[0]); Assert.AreEqual("Zhuan", pys[1]); py = WordsHelper.GetPinYinForName("单一一"); Assert.AreEqual("ShanYiYi", py); py = WordsHelper.GetPinYinForName("单一一", true); Assert.AreEqual("ShànYīYī", py); }
/// <summary> /// 初始化数据源并绑定 /// </summary> private void initData() { try { isMatch = false; //初始化设置五笔字典的文件路径 WBTranslationHelper.Init(); #region 初始化数据源 cmbDefaultBindSource = new List <object>(); DataTable dt = new DataTable(); dt.Columns.Add("Code", typeof(string)); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("PinYin", typeof(string)); //处理中文转拼音,用于过滤使用 dt.Columns.Add("FirstPinYin", typeof(string)); //处理中文转拼音(首字符),用于过滤使用 dt.Columns.Add("Wb", typeof(string)); //处理中文转五笔编码,用于过滤使用 dt.Columns.Add("FirstWb", typeof(string)); //处理中文转五笔编码(首字符),用于过滤使用 var countryArr = countrys.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); for (int i = 0; i < countryArr.Length; i++) { var name = countryArr[i]; // 获取拼音全拼 var name_PinYin = WordsHelper.GetPinYin(name); // 获取首字母 var name_First_PinYin = WordsHelper.GetFirstPinYin(name); // 获取五笔全拼 var name_Wb = WBTranslationHelper.GetWbAll(name); // 获取五笔编码首字母 var name_First_Wb = WBTranslationHelper.GetWbFirst(name); dt.Rows.Add((i + 1).ToString(), name, name_PinYin, name_First_PinYin, name_Wb, name_First_Wb); cmbDefaultBindSource.Add(name); } dt.AcceptChanges(); dtSource = dt; #endregion //绑定数据源 this.cmbox.Properties.Items.AddRange(cmbDefaultBindSource); //绑定过滤模式 this.cmbFilterMode.Properties.Items.Add("中文"); this.cmbFilterMode.Properties.Items.Add("拼音首字母"); this.cmbFilterMode.Properties.Items.Add("拼音全拼"); this.cmbFilterMode.Properties.Items.Add("五笔首字母"); this.cmbFilterMode.Properties.Items.Add("五笔全拼"); this.cmbFilterMode.SelectedIndex = 0; } catch (Exception Ex) { MessageBox.Show(Ex.Message, "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public void SetKeys(List <string> keys) { if (keys != null && keys.Any()) { var allKeys = new List <string>(); foreach (var k in keys) { allKeys.Add(k); // 增加词汇 allKeys.Add(WordsHelper.ToTraditionalChinese(k)); // 增加繁体 allKeys.Add(WordsHelper.GetPinyin(k)); // 增加拼音 } IllegalWordsSearch.SetKeywords(allKeys); } }
public void HasChinese() { var b = WordsHelper.HasChinese("xhdsf"); Assert.AreEqual(false, b); var c = WordsHelper.HasChinese("我爱中国"); Assert.AreEqual(true, c); var d = WordsHelper.HasChinese("I爱中国"); Assert.AreEqual(true, d); }
private string ValidateSynonyms(string str) { if (!WordsHelper.IsEmpty(str)) { return("Please enter words"); } if (!WordsHelper.ContainsWords(str)) { return($"You should have at least two words separated by {WordsHelper.WordsSeparator}"); } return(string.Empty); }
/// <summary> /// 结果管道 /// </summary> /// <param name="result"></param> /// <returns></returns> public string ResultPipe(string result) { if (result.IsNullOrWhiteSpace()) { return(result); } if (Reverse == "all") { result = ReverseStr(result); } else if (Reverse == "row") { result = ReverseStr(result, true); } if (WordsHelper.HasChinese(result)) { if (ToTraditionalChinese) { result = WordsHelper.ToTraditionalChinese(result); } else if (ToSimplifiedChinese) { result = WordsHelper.ToSimplifiedChinese(result); } else if (ToPinyin != null) { result = WordsHelper.GetPinyin(result, ToPinyin.Equals("tone", StringComparison.OrdinalIgnoreCase)); } else if (ToFirstPinyin) { result = WordsHelper.GetFirstPinyin(result)?.ToLower(); } } if (Lower) { result = result?.ToLower(); } else if (Upper) { result = result?.ToUpper(); } if (SpeakWithWhiteSpace) { result = ToSpeakWithWhiteSpace(result); } return(result); }
public void GetPinyin() { var list = WordsHelper.GetAllPinyin('㘄'); list = WordsHelper.GetAllPinyin('䉄'); list = WordsHelper.GetAllPinyin('䬋'); list = WordsHelper.GetAllPinyin('䮚'); list = WordsHelper.GetAllPinyin('䚏'); list = WordsHelper.GetAllPinyin('㭁'); list = WordsHelper.GetAllPinyin('䖆'); var list2 = WordsHelper.GetPinyin("𠀀"); var list3 = WordsHelper.GetPinyin("𫠝"); //var start = "𠀀";// '\ud840' '\udc00' - '\udfff' //var end = "𫠝";// '\ud86e' '\udc1d' }
/// <summary> /// 获取字符串首个字 的 首个字符 /// </summary> /// <param name="source"></param> /// <returns></returns> public static char GetFirstChar(string source, bool isGroupBy = false) { if (string.IsNullOrEmpty(source)) { return isGroupBy ? GROUPBY_CHAR : SORT_CHAR; } var t = source.Substring(0, 1); if (WordsHelper.HasChinese(t)) { return char.Parse((WordsHelper.GetFirstPinYin(t).Substring(0, 1))); } else if (WordsHelper.HasEnglish(t)) return Char.Parse(t.ToUpper()); else return isGroupBy ? GROUPBY_CHAR : SORT_CHAR; }
static void Main(string[] args) { Console.WriteLine("ToolGood.Words.Core Test!"); Console.WriteLine("1.文本转换"); //繁体转简体 Console.WriteLine($"繁体转简体:壹佰贰拾叁億肆仟伍佰陆拾柒萬捌仟玖佰零壹元壹角贰分->{WordsHelper.ToSimplifiedChinese("壹佰贰拾叁億肆仟伍佰陆拾柒萬捌仟玖佰零壹元壹角贰分")}"); //简体转繁体 Console.WriteLine($"简体转繁体:壹佰贰拾叁亿肆仟伍佰陆拾柒万捌仟玖佰零壹元壹角贰分->{WordsHelper.ToTraditionalChinese("壹佰贰拾叁亿肆仟伍佰陆拾柒万捌仟玖佰零壹元壹角贰分")}"); //半角转全角 Console.WriteLine($"半角转全角:abc123->{WordsHelper.ToSBC("abcABC123")}"); //全角转半角 Console.WriteLine($"全角转半角:abcABC123->{WordsHelper.ToDBC("abcABC123")}"); // 数字转成中文大写 Console.WriteLine($"数字转成中文大写:12345678901.12->{WordsHelper.ToChineseRMB(12345678901.12)}"); //汉字转拼音 Console.WriteLine($"汉字转拼音:我爱中国->{WordsHelper.GetPinYin("我爱中国")}"); //获取汉字拼音首字母 Console.WriteLine($"获取汉字拼音首字母:我爱中国->{WordsHelper.GetFirstPinYin("我爱中国")}"); //获取多音字全部拼音 Console.WriteLine($"获取多音字全部拼音:强->{string.Join(",", WordsHelper.GetAllPinYin('强').ToArray())}"); Console.WriteLine("------------------------------------------------"); Console.WriteLine("2.拼音模糊搜索"); Console.WriteLine("原文本:阿根廷,澳大利亚,比利时,玻利维亚,巴西,白俄罗斯,加拿大,智利,中国,哥伦比亚,哥斯达黎加,古巴,捷克斯洛伐克,丹麦,多米尼加共和国,厄瓜多尔,埃及,萨尔瓦多,埃塞俄比亚,法国,希腊,危地马拉,海地,洪都拉斯,印度,伊朗,伊拉克,黎巴嫩,利比里亚,卢森堡,墨西哥,荷兰,新西兰,尼加拉瓜,挪威,巴拿马,巴拉圭,秘鲁,菲律宾,波兰,俄罗斯联邦,沙特阿拉伯,南非,阿拉伯叙利亚共和国,土耳其,乌克兰,大不列颠及北爱尔兰联合王国,美利坚合众国,乌拉圭,委内瑞拉,南斯拉夫,阿富汗,冰岛,瑞典,泰国,巴基斯坦,也门,缅甸,以色列,印度尼西亚,阿尔巴尼亚,澳地利,保加利亚,柬埔寨,芬兰,匈牙利,爱尔兰,意大利,约旦,老挝人民民主共和国,罗马利亚,西班牙,斯里兰卡,阿拉伯利比亚民众国,尼泊尔,葡萄牙,日本,摩洛哥,苏丹,突尼斯,加纳,马来西亚,几内亚,贝宁,布基纳法索,喀麦隆,中非共和国,乍得,刚果,科特迪瓦,塞浦路斯,加蓬,马达加斯加,马里,尼日尔,尼日利亚,塞内加尔,索马里,多哥,刚果民主共和国,毛里塔尼亚,蒙古,塞拉利昂,坦桑尼亚联合共和国,阿尔及利亚,布隆迪,牙买加,卢旺达,特立尼达和多巴哥,乌干达,肯尼亚,科威特,马拉维,马耳他,赞比亚,冈比亚,马尔代夫,新加坡,巴巴多斯,博茨瓦纳,圭亚那,莱索托,民主也门,赤道几内亚,毛里求斯,斯威士兰,斐济,巴林,不丹,阿曼,卡塔尔,阿拉伯联合酋长国,巴哈马,德意志联邦共和国,德意志民主共和国,孟加拉国,格林纳达,几内亚比绍,佛得角,科摩罗,莫桑比克,巴布亚新几内亚,圣多美和普林西比多米尼加,所罗门群岛,苏里南,安哥拉,萨摩亚,塞舌尔,吉布提,越南,圣卢西亚,圣文森特和格林纳丁斯,津巴布韦,安提瓜和巴布达,伯利兹,瓦努阿图,圣基茨和尼维斯,文莱达鲁萨兰国,列支敦士登,纳米比亚,朝鲜民主主义人民共和国,爱沙尼亚,密克罗尼西亚联邦,拉脱维亚,立陶宛,马绍尔群岛,大韩民国,亚美尼亚,阿塞拜疆,波斯尼亚和黑塞哥维那,克罗地亚,格鲁吉亚,哈萨克斯坦,吉尔吉斯,摩尔多瓦,圣马力诺,斯洛文尼亚,塔吉克斯坦,土库曼斯坦,乌兹别克斯坦,安道尔,捷克共和国,厄立特里亚,摩纳哥,斯洛伐克共和国,前南斯拉夫的马其顿共和国,帕劳,基里巴斯共和国,瑙鲁,汤加,图瓦卢,南斯拉夫,瑞士,东帝汶"); var text = "阿根廷,澳大利亚,比利时,玻利维亚,巴西,白俄罗斯,加拿大,智利,中国,哥伦比亚,哥斯达黎加,古巴,捷克斯洛伐克,丹麦,多米尼加共和国,厄瓜多尔,埃及,萨尔瓦多,埃塞俄比亚,法国,希腊,危地马拉,海地,洪都拉斯,印度,伊朗,伊拉克,黎巴嫩,利比里亚,卢森堡,墨西哥,荷兰,新西兰,尼加拉瓜,挪威,巴拿马,巴拉圭,秘鲁,菲律宾,波兰,俄罗斯联邦,沙特阿拉伯,南非,阿拉伯叙利亚共和国,土耳其,乌克兰,大不列颠及北爱尔兰联合王国,美利坚合众国,乌拉圭,委内瑞拉,南斯拉夫,阿富汗,冰岛,瑞典,泰国,巴基斯坦,也门,缅甸,以色列,印度尼西亚,阿尔巴尼亚,澳地利,保加利亚,柬埔寨,芬兰,匈牙利,爱尔兰,意大利,约旦,老挝人民民主共和国,罗马利亚,西班牙,斯里兰卡,阿拉伯利比亚民众国,尼泊尔,葡萄牙,日本,摩洛哥,苏丹,突尼斯,加纳,马来西亚,几内亚,贝宁,布基纳法索,喀麦隆,中非共和国,乍得,刚果,科特迪瓦,塞浦路斯,加蓬,马达加斯加,马里,尼日尔,尼日利亚,塞内加尔,索马里,多哥,刚果民主共和国,毛里塔尼亚,蒙古,塞拉利昂,坦桑尼亚联合共和国,阿尔及利亚,布隆迪,牙买加,卢旺达,特立尼达和多巴哥,乌干达,肯尼亚,科威特,马拉维,马耳他,赞比亚,冈比亚,马尔代夫,新加坡,巴巴多斯,博茨瓦纳,圭亚那,莱索托,民主也门,赤道几内亚,毛里求斯,斯威士兰,斐济,巴林,不丹,阿曼,卡塔尔,阿拉伯联合酋长国,巴哈马,德意志联邦共和国,德意志民主共和国,孟加拉国,格林纳达,几内亚比绍,佛得角,科摩罗,莫桑比克,巴布亚新几内亚,圣多美和普林西比多米尼加,所罗门群岛,苏里南,安哥拉,萨摩亚,塞舌尔,吉布提,越南,圣卢西亚,圣文森特和格林纳丁斯,津巴布韦,安提瓜和巴布达,伯利兹,瓦努阿图,圣基茨和尼维斯,文莱达鲁萨兰国,列支敦士登,纳米比亚,朝鲜民主主义人民共和国,爱沙尼亚,密克罗尼西亚联邦,拉脱维亚,立陶宛,马绍尔群岛,大韩民国,亚美尼亚,阿塞拜疆,波斯尼亚和黑塞哥维那,克罗地亚,格鲁吉亚,哈萨克斯坦,吉尔吉斯,摩尔多瓦,圣马力诺,斯洛文尼亚,塔吉克斯坦,土库曼斯坦,乌兹别克斯坦,安道尔,捷克共和国,厄立特里亚,摩纳哥,斯洛伐克共和国,前南斯拉夫的马其顿共和国,帕劳,基里巴斯共和国,瑙鲁,汤加,图瓦卢,南斯拉夫,瑞士,东帝汶"; PinYinSearch search = new PinYinSearch(); search.SetKeywords(text.Split(',').ToList()); Console.WriteLine(""); Console.WriteLine($"搜索 ad:{string.Join(",", search.SearchTexts("ad", true).ToArray())}"); //安道尔,澳大利亚,澳地利 Console.WriteLine($"搜索 白e:{string.Join(",", search.SearchTexts("白e", true).ToArray())}"); //白俄罗斯 Console.WriteLine($"搜索 baie:{string.Join(",", search.SearchTexts("baie", true).ToArray())}"); //白俄罗斯 Console.WriteLine($"搜索 bai俄:{string.Join(",", search.SearchTexts("bai俄", true).ToArray())}"); //白俄罗斯 Console.ReadKey(); }
public async Task Add(UserAddInput input) { var user = input.Adapt <SysUser>(); user.FirstNameInitial = WordsHelper.GetFirstPinyin(user.Name.Substring(0, 1)); user.PasswordLevel = (PasswordLevel)H_Util.CheckPasswordLevel(user.Password); user.Password = H_EncryptProvider.HMACSHA256(user.Password, _appSettings.Key.Sha256Key); user.Enabled = true; var role = await _roleDomainService.Get(input.RoleId.Value); user.RoleId = role.Id; user.RoleName = role.Name; user.AuthNumbers = role.AuthNumbers; user.RoleLevel = role.Level; await _userDomainService.Add(user); }
public void GetPinyin() { var list = WordsHelper.GetAllPinyin('㘄'); list = WordsHelper.GetAllPinyin('䉄'); list = WordsHelper.GetAllPinyin('䬋'); list = WordsHelper.GetAllPinyin('䮚'); list = WordsHelper.GetAllPinyin('䚏'); list = WordsHelper.GetAllPinyin('㭁'); list = WordsHelper.GetAllPinyin('䖆'); var list2 = WordsHelper.GetPinyin("𠀀"); var list3 = WordsHelper.GetPinyin("𫠝"); //var start = "𠀀";// '\ud840' '\udc00' - '\udfff' //var end = "𫠝";// '\ud86e' '\udc1d' var t = "三个金念鑫,三个水念淼,三个火念焱, 三个土念垚,三个牛念犇,三个手念掱,三个目念瞐,三个田念畾,三个马念骉,三个羊念羴,三个犬念猋,三个鹿念麤,三个鱼念鱻,三个贝念赑,三个力念劦,三个毛念毳,三个耳念聶,三个车念轟,三个直念矗,三个龙念龘,三个原念厵,三个雷念靐,三个飞念飝,三个刀念刕,三个又念叒,三个士念壵,三个小念尛,三个子念孨,三个止念歮,三个风念飍,三个隼念雥,三个吉念嚞,三个言念譶,三个舌念舙,三个香念馫,三个泉念灥,三个心念惢,三个白念皛"; var pys = ToolGood.Words.WordsHelper.GetPinyin(t); }
public void ToTraditionalChinese() { var tw = WordsHelper.ToTraditionalChinese("壹佰贰拾叁亿肆仟伍佰陆拾柒万捌仟玖佰零壹元壹角贰分"); Assert.AreEqual("壹佰貳拾叄億肆仟伍佰陸拾柒萬捌仟玖佰零壹元壹角貳分", tw); var tw2 = WordsHelper.ToTraditionalChinese("原代码11", 2); Assert.AreEqual("原始碼11", tw2); var tw3 = WordsHelper.ToTraditionalChinese("反反复复", 2); Assert.AreEqual("反反覆覆", tw3); var tw4 = WordsHelper.ToTraditionalChinese("这人考虑事情总是反反复复的", 2); Assert.AreEqual("這人考慮事情總是反反覆覆的", tw4); var tw5 = WordsHelper.ToTraditionalChinese("计算发现", 2); }
public ValidationResult IsValid(object value, ValidationContext validationContext) { if (value is string v) { if (!String.IsNullOrEmpty(v)) { if (MinGanProvider.Instance.IllegalWordsSearch.ContainsAny(v)) { return(new ValidationResult("存在敏感词", new[] { validationContext.MemberName })); } // 检查拼音 if (MinGanProvider.Instance.IllegalWordsSearch.ContainsAny(WordsHelper.GetPinyin(v))) { return(new ValidationResult("存在敏感词", new [] { validationContext.MemberName })); } // todo:其他变种 } } return(ValidationResult.Success); }
static void GetPinYinWords(string file, HashSet <PinYinWords> pyws) { SougouPinyinScel scel = new SougouPinyinScel(); var t = scel.Import(file); List <Tuple <string, string> > list = new List <Tuple <string, string> >(); foreach (var item in t) { var w = item.Word; var py = WordsHelper.GetPinYinFast(w).ToLower(); var py1 = item.PinYinString.Replace("'", ""); if (py != py1) { list.Add(Tuple.Create(w, item.PinYinString)); } } for (int i = 2; i < 5; i++) { SimplifyPinYin(list, pyws, i); } }
public void GetPinYin() { var t = WordsHelper.GetAllPinYin('芃'); Assert.AreEqual("Peng", t[0]); var a = WordsHelper.GetPinYinFast("阿"); Assert.AreEqual("A", a); var b = WordsHelper.GetPinYin("摩擦棒"); Assert.AreEqual("MoCaBang", b); b = WordsHelper.GetPinYin("秘鲁"); Assert.AreEqual("BiLu", b); var py = WordsHelper.GetPinYinFast("我爱中国"); Assert.AreEqual("WoAiZhongGuo", py); py = WordsHelper.GetPinYin("快乐,乐清"); Assert.AreEqual("KuaiLe,YueQing", py); py = WordsHelper.GetPinYin("我爱中国"); Assert.AreEqual("WoAiZhongGuo", py); py = WordsHelper.GetFirstPinYin("我爱中国"); Assert.AreEqual("WAZG", py); var pys = WordsHelper.GetAllPinYin('传'); Assert.AreEqual("Chuan", pys[0]); Assert.AreEqual("Zhuan", pys[1]); }