• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

C# GrammaticalGender类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C#中GrammaticalGender的典型用法代码示例。如果您正苦于以下问题:C# GrammaticalGender类的具体用法?C# GrammaticalGender怎么用?C# GrammaticalGender使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



GrammaticalGender类属于命名空间,在下文中一共展示了GrammaticalGender类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: CollectPartsUnderAHundred

 protected virtual void CollectPartsUnderAHundred(ICollection<string> parts, ref int number, GrammaticalGender gender, bool pluralize)
 {
     if (number < 20)
     {
         parts.Add(GetUnits(number, gender));
     }
     else
     {
         var units = number%10;
         var tens = GetTens(number/10);
         if (units == 0)
         {
             parts.Add(tens);
         }
         else if (units == 1)
         {
             parts.Add(tens);
             parts.Add("et");
             parts.Add(GetUnits(1, gender));
         }
         else
         {
             parts.Add(string.Format("{0}-{1}", tens, GetUnits(units, gender)));
         }
     }
 }
开发者ID:Alexander882,项目名称:Humanizer,代码行数:26,代码来源:FrenchNumberToWordsConverterBase.cs


示例2: AdjectiveWordToken

 public AdjectiveWordToken(string text, InflectionCase inflectionCase,
     GrammaticalGender grammaticalGender, DecliantionNumber decliantionNumber, AdjectiveLevel level)
     : base(text, inflectionCase, decliantionNumber)
 {
     this.level = level;
     this.genre = grammaticalGender;
 }
开发者ID:Sebastian-Gruchacz,项目名称:Flaksator,代码行数:7,代码来源:AdjectiveWordToken.cs


示例3: Convert

        public override string Convert(int number, string numberString, GrammaticalGender gender)
        {
            // No ordinal for 0 (zero) in Romanian.
            if (number == 0)
            {
                return "0";
            }

            // Exception from the rule.
            if (number == 1)
            {
                if (gender == GrammaticalGender.Feminine)
                {
                    return "prima"; // întâia
                }

                return "primul"; // întâiul
            }

            if (gender == GrammaticalGender.Feminine)
            {
                return string.Format("a {0}-a", numberString);
            }

            return string.Format("al {0}-lea", numberString);

        }
开发者ID:ninwnj,项目名称:Humanizer,代码行数:27,代码来源:RomanianOrdinalizer.cs


示例4: CollectPartsUnderOneThousand

        private static void CollectPartsUnderOneThousand(ICollection<string> parts, int number, GrammaticalGender gender)
        {
            if (number >= 100)
            {
                var hundreds = number/100;
                number %= 100;
                parts.Add(HundredsMap[hundreds]);
            }

            if (number >= 20)
            {
                var tens = number/10;
                parts.Add(TensMap[tens]);
                number %= 10;
            }

            if (number > 0)
            {
                if (number == 1 && gender == GrammaticalGender.Feminine)
                    parts.Add("одна");
                else if (number == 1 && gender == GrammaticalGender.Neuter)
                    parts.Add("одне");
                else if (number == 2 && gender == GrammaticalGender.Feminine)
                    parts.Add("дві");
                else if (number < 20)
                    parts.Add(UnitsMap[number]);
            }
        }
开发者ID:transformersprimeabcxyz,项目名称:Humanizer,代码行数:28,代码来源:UkrainianNumberToWordsConverter.cs


示例5: ItalianCardinalNumberCruncher

 public ItalianCardinalNumberCruncher(int number, GrammaticalGender gender)
 {
     _fullNumber = number;
     _threeDigitParts = SplitEveryThreeDigits(number);
     _gender = gender;
     _nextSet = ThreeDigitSets.Units;
 }
开发者ID:transformersprimeabcxyz,项目名称:Humanizer,代码行数:7,代码来源:ItalianCardinalNumberCruncher.cs


示例6: Convert

        public override string Convert(int number, string numberString, GrammaticalGender gender)
        {
            // N/A in Dutch
            if (number == 0)
                return "0";

            return numberString + "e";
        }
开发者ID:transformersprimeabcxyz,项目名称:Humanizer,代码行数:8,代码来源:DutchOrdinalizer.cs


示例7: GetForm

        public string GetForm(GrammaticalGender genre, InflectionCase aCase, DecliantionNumber amount, AdjectiveLevel level)
        {
            AdjectiveWordToken token = new AdjectiveWordToken(null, aCase, genre, amount, level);
            foreach (AdjectiveWordToken tok in Irregulars)
                if (tok.Is(token))
                    return tok.Text;

            return null;
        }
开发者ID:Sebastian-Gruchacz,项目名称:Flaksator,代码行数:9,代码来源:Adjective.cs


示例8: Convert

 public override string Convert(int number, GrammaticalGender gender)
 {
     if (number < 0)
         return "meno " + Convert(Math.Abs(number), gender);
 
     var cruncher = new ItalianCardinalNumberCruncher(number, gender);
     
     return cruncher.Convert();
 }
开发者ID:ninwnj,项目名称:Humanizer,代码行数:9,代码来源:ItalianNumberToWordsConverter.cs


示例9: GetUnits

        protected static string GetUnits(int number, GrammaticalGender gender)
        {
            if (number == 1 && gender == GrammaticalGender.Feminine)
            {
                return "une";
            }

            return UnitsMap[number];
        }
开发者ID:Alexander882,项目名称:Humanizer,代码行数:9,代码来源:FrenchNumberToWordsConverterBase.cs


示例10: CollectPartsUnderAHundred

 protected override void CollectPartsUnderAHundred(ICollection<string> parts, ref int number, GrammaticalGender gender, bool pluralize)
 {
     if (number == 80)
         parts.Add(pluralize ? "quatre-vingts" : "quatre-vingt");
     else if (number == 81)
         parts.Add(gender == GrammaticalGender.Feminine ? "quatre-vingt-une" : "quatre-vingt-un");
     else
         base.CollectPartsUnderAHundred(parts, ref number, gender, pluralize);
 }
开发者ID:Alexander882,项目名称:Humanizer,代码行数:9,代码来源:FrenchBelgianNumberToWordsConverter.cs


示例11: Convert

        public override string Convert(int number, string numberString, GrammaticalGender gender)
        {
            if (gender == GrammaticalGender.Masculine)
                return numberString + "-й";
            
            if (gender == GrammaticalGender.Feminine)
                return numberString + "-я";

            return numberString + "-е";
        }
开发者ID:BrainCrumbz,项目名称:Humanizer,代码行数:10,代码来源:RussianOrdinalizer.cs


示例12: NounPostfixToken

        public NounPostfixToken(GrammaticalGender grammaticalGender, InflectionCase inflectionCase, DecliantionNumber decliantionNumber,
            string wordDeclination, params string[] wordPostfixes)
        {
            this.genre = grammaticalGender;
            this.inflectionCase = inflectionCase;
            this.amount = decliantionNumber;
            this.nounDeclination = wordDeclination;
            this.postfixes = wordPostfixes;

        }
开发者ID:Sebastian-Gruchacz,项目名称:Flaksator,代码行数:10,代码来源:NounPostfixToken.cs


示例13: Convert

        public override string Convert(int number, string numberString, GrammaticalGender gender)
        {
            // N/A in Spanish
            if (number == 0)
                return "0";

            if (gender == GrammaticalGender.Feminine)
                return numberString + ".ª";           
            else
                return numberString + ".º";
        }
开发者ID:hgdiaz,项目名称:Humanizer,代码行数:11,代码来源:SpanishOrdinalizer.cs


示例14: Convert

        public override string Convert(int number, string numberString, GrammaticalGender gender)
        {
            // N/A in Portuguese
            if (number == 0)
                return "0";

            if (gender == GrammaticalGender.Feminine)
                return numberString + "ª";

            return numberString + "º";
        }
开发者ID:transformersprimeabcxyz,项目名称:Humanizer,代码行数:11,代码来源:PortugueseOrdinalizer.cs


示例15: ConvertToOrdinal

        public override string ConvertToOrdinal(int number, GrammaticalGender gender)
        {
            if (number == 0)
                return "null" + GetEndingForGender(gender);

            var parts = new List<string>();
            if (number < 0)
            {
                parts.Add("minus ");
                number = -number;
            }

            var billions = number/1000000000;
            if (billions > 0)
            {
                number %= 1000000000;
                var noRest = NoRestIndex(number);
                parts.Add(Part(BillionOrdinalPlural[noRest], BillionOrdinalSingular[noRest], billions));
            }

            var millions = number/1000000;
            if (millions > 0)
            {
                number %= 1000000;
                var noRest = NoRestIndex(number);
                parts.Add(Part(MillionOrdinalPlural[noRest], MillionOrdinalSingular[noRest], millions));
            }

            var thousands = number/1000;
            if (thousands > 0)
            {
                parts.Add(Part("{0}tausend", "eintausend", thousands));
                number %= 1000;
            }

            var hundreds = number/100;
            if (hundreds > 0)
            {
                parts.Add(Part("{0}hundert", "einhundert", hundreds));
                number %= 100;
            }

            if (number > 0)
                parts.Add(number < 20 ? UnitsOrdinal[number] : Convert(number));

            if (number == 0 || number >= 20)
                parts.Add("s");

            parts.Add(GetEndingForGender(gender));

            return string.Join("", parts);
        }
开发者ID:hgdiaz,项目名称:Humanizer,代码行数:52,代码来源:GermanNumberToWordsConverter.cs


示例16: ConvertToOrdinal

        public override string ConvertToOrdinal(int number, GrammaticalGender gender)
        {
            // N/A in Portuguese ordinal
            if (number == 0)
                return "zero";

            var parts = new List<string>();

            if ((number / 1000000000) > 0)
            {
                parts.Add(number / 1000000000 == 1
                    ? ApplyOrdinalGender("bilionésimo", gender)
                    : string.Format("{0} " + ApplyOrdinalGender("bilionésimo", gender), ConvertToOrdinal(number / 1000000000, gender)));

                number %= 1000000000;
            }

            if ((number / 1000000) > 0)
            {
                parts.Add(number / 1000000 == 1
                    ? ApplyOrdinalGender("milionésimo", gender)
                    : string.Format("{0}" + ApplyOrdinalGender("milionésimo", gender), ConvertToOrdinal(number / 1000000000, gender)));

                number %= 1000000;
            }

            if ((number / 1000) > 0)
            {
                parts.Add(number / 1000 == 1
                    ? ApplyOrdinalGender("milésimo", gender)
                    : string.Format("{0} " + ApplyOrdinalGender("milésimo", gender), ConvertToOrdinal(number / 1000, gender)));

                number %= 1000;
            }

            if ((number / 100) > 0)
            {
                parts.Add(ApplyOrdinalGender(PortugueseOrdinalHundredsMap[number / 100], gender));
                number %= 100;
            }

            if ((number / 10) > 0)
            {
                parts.Add(ApplyOrdinalGender(PortugueseOrdinalTensMap[number / 10], gender));
                number %= 10;
            }

            if (number > 0)
                parts.Add(ApplyOrdinalGender(PortugueseOrdinalUnitsMap[number], gender));

            return string.Join(" ", parts.ToArray());
        }
开发者ID:BrainCrumbz,项目名称:Humanizer,代码行数:52,代码来源:BrazilianPortugueseNumberToWordsConverter.cs


示例17: CollectPartsUnderAHundred

 protected override void CollectPartsUnderAHundred(ICollection<string> parts, ref int number, GrammaticalGender gender, bool pluralize)
 {
     if (number == 71)
         parts.Add("soixante et onze");
     else if (number == 80)
         parts.Add(pluralize ? "quatre-vingts" : "quatre-vingt");
     else if (number >= 70)
     {
         var @base = number < 80 ? 60 : 80;
         int units = number - @base;
         var tens = @base/10;
         parts.Add(string.Format("{0}-{1}", GetTens(tens), GetUnits(units, gender)));
     }
     else
         base.CollectPartsUnderAHundred(parts, ref number, gender, pluralize);
 }
开发者ID:Alexander882,项目名称:Humanizer,代码行数:16,代码来源:FrenchNumberToWordsConverter.cs


示例18: Convert

        public override string Convert(int number, string numberString, GrammaticalGender gender)
        {
            if (number == 0)
            {
                return "0";
            }

            if (gender == GrammaticalGender.Feminine)
            {
                return numberString + "ª";
            }
            else
            {
                return numberString + "º";
            }
        }
开发者ID:riccardos77,项目名称:Humanizer,代码行数:16,代码来源:ItalianOrdinalizer.cs


示例19: ConvertToOrdinal

        public override string ConvertToOrdinal(int number, GrammaticalGender gender)
        {
            if (number == 0)
                return "нулев" + GetEndingForGender(gender, number);

            var parts = new List<string>();

            if (number < 0)
            {
                parts.Add("минус");
                number = -number;
            }

            CollectOrdinalParts(parts, ref number, 1000000000, GrammaticalGender.Masculine, "миллиардн" + GetEndingForGender(gender, number), "миллиард", "миллиарда", "миллиардов");
            CollectOrdinalParts(parts, ref number, 1000000, GrammaticalGender.Masculine, "миллионн" + GetEndingForGender(gender, number), "миллион", "миллиона", "миллионов");
            CollectOrdinalParts(parts, ref number, 1000, GrammaticalGender.Feminine, "тысячн" + GetEndingForGender(gender, number), "тысяча", "тысячи", "тысячь");

            if (number >= 100)
            {
                var ending = GetEndingForGender(gender, number);
                var hundreds = number/100;
                number %= 100;
                if (number == 0)
                    parts.Add(UnitsOrdinalPrefixes[hundreds] + "сот" + ending);
                else
                    parts.Add(HundredsMap[hundreds]);
            }

            if (number >= 20)
            {
                var ending = GetEndingForGender(gender, number);
                var tens = number/10;
                number %= 10;
                if (number == 0)
                    parts.Add(TensOrdinal[tens] + ending);
                else
                    parts.Add(TensMap[tens]);
            }

            if (number > 0)
                parts.Add(UnitsOrdinal[number] + GetEndingForGender(gender, number));

            return string.Join(" ", parts);
        }
开发者ID:CodeFromJordan,项目名称:Humanizer,代码行数:44,代码来源:RussianNumberToWordsConverter.cs


示例20: Convert

        public override string Convert(int number, GrammaticalGender gender)
        {
            if (number == 0)
                return "ноль";

            if (number < 0)
                return string.Format("минус {0}", Convert(-number, gender));

            var parts = new List<string>();

            var milliards = number / 1000000000;
            if (milliards > 0)
            {
                var map = new[] { "миллиард", "миллиарда", "миллиардов" };
                var grammaticalNumber = RussianGrammaticalNumberDetector.Detect(milliards);
                parts.Add(string.Format("{0} {1}", ToWordsUnderThousand(milliards, GrammaticalGender.Masculine), map[GetIndex(grammaticalNumber)]));
                number %= 1000000000;
            }

            var millions = number / 1000000;
            if (millions > 0)
            {
                var map = new[] { "миллион", "миллиона", "миллионов" };
                var grammaticalNumber = RussianGrammaticalNumberDetector.Detect(millions);
                parts.Add(string.Format("{0} {1}", ToWordsUnderThousand(millions, GrammaticalGender.Masculine), map[GetIndex(grammaticalNumber)]));
                number %= 1000000;
            }

            var thousands = number / 1000;
            if (thousands > 0)
            {
                var map = new[] { "тысяча", "тысячи", "тысячь" };
                var grammaticalNumber = RussianGrammaticalNumberDetector.Detect(thousands);
                parts.Add(string.Format("{0} {1}", ToWordsUnderThousand(thousands, GrammaticalGender.Feminine), map[GetIndex(grammaticalNumber)]));
                number %= 1000;
            }

            if (number > 0)
            {
                parts.Add(ToWordsUnderThousand(number, gender));
            }

            return string.Join(" ", parts.ToArray());
        }
开发者ID:nhammadi,项目名称:Humanizer,代码行数:44,代码来源:RussianNumberToWordsConverter.cs



注:本文中的GrammaticalGender类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# Graph类代码示例发布时间:2022-05-24
下一篇:
C# GrammarBuilder类代码示例发布时间:2022-05-24
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap