当前位置: 首页>>代码示例>>C#>>正文


C# CompareInfo.LastIndexOf方法代码示例

本文整理汇总了C#中System.Globalization.CompareInfo.LastIndexOf方法的典型用法代码示例。如果您正苦于以下问题:C# CompareInfo.LastIndexOf方法的具体用法?C# CompareInfo.LastIndexOf怎么用?C# CompareInfo.LastIndexOf使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Globalization.CompareInfo的用法示例。


在下文中一共展示了CompareInfo.LastIndexOf方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: AssertLastIndexOf

	void AssertLastIndexOf (string message, int expected, string source,
		string target, int idx, int len, CompareOptions opt, CompareInfo ci)
	{
		Assert.AreEqual (expected, ci.LastIndexOf (source, target, idx, len, opt), message);
	}
开发者ID:carrie901,项目名称:mono,代码行数:5,代码来源:CompareInfoTest.cs

示例2: AsteriskSkip

        private static int AsteriskSkip(string Pattern, string Source, int SourceEndIndex, CompareMethod CompareOption, CompareInfo ci)
        {
            int num2;
            int num4;
            int num3 = Strings.Len(Pattern);
            while (num4 < num3)
            {
                bool flag;
                bool flag2;
                bool flag3;
                switch (Pattern[num4])
                {
                    case '-':
                        if (Pattern[num4 + 1] == ']')
                        {
                            flag2 = true;
                        }
                        break;

                    case '!':
                        if (Pattern[num4 + 1] == ']')
                        {
                            flag2 = true;
                        }
                        else
                        {
                            flag3 = true;
                        }
                        break;

                    case '[':
                        if (flag)
                        {
                            flag2 = true;
                        }
                        else
                        {
                            flag = true;
                        }
                        break;

                    case ']':
                        if (flag2 || !flag)
                        {
                            num2++;
                            flag3 = true;
                        }
                        flag2 = false;
                        flag = false;
                        break;

                    case '*':
                        if (num2 > 0)
                        {
                            CompareOptions ordinal;
                            if (flag3)
                            {
                                num2 = MultipleAsteriskSkip(Pattern, Source, num2, CompareOption);
                                return (SourceEndIndex - num2);
                            }
                            string str = Pattern.Substring(0, num4);
                            if (CompareOption == CompareMethod.Binary)
                            {
                                ordinal = CompareOptions.Ordinal;
                            }
                            else
                            {
                                ordinal = CompareOptions.IgnoreWidth | CompareOptions.IgnoreKanaType | CompareOptions.IgnoreNonSpace | CompareOptions.IgnoreCase;
                            }
                            return ci.LastIndexOf(Source, str, ordinal);
                        }
                        break;

                    case '?':
                    case '#':
                        if (flag)
                        {
                            flag2 = true;
                        }
                        else
                        {
                            num2++;
                            flag3 = true;
                        }
                        break;

                    default:
                        if (flag)
                        {
                            flag2 = true;
                        }
                        else
                        {
                            num2++;
                        }
                        break;
                }
                num4++;
            }
            return (SourceEndIndex - num2);
//.........这里部分代码省略.........
开发者ID:pritesh-mandowara-sp,项目名称:DecompliedDotNetLibraries,代码行数:101,代码来源:Operators.cs

示例3: StandardMatchIndexCalculation

        // Returns the index and length of the first or last occurance of one string 
        // within another string.
        private static int StandardMatchIndexCalculation(string textString, string findPattern, bool matchWholeWord, bool matchLast, bool ignoreCase, CompareInfo compareInfo, bool hasPreceedingSeparatorChar, bool hasFollowingSeparatorChar, out int matchLength) 
        {
            CompareOptions options = ignoreCase ? CompareOptions.IgnoreCase : 0;
            int matchIndex = -1;
            int searchStart = 0; 
            int searchLength = textString.Length;
 
            matchLength = 0; 

            while (searchLength > 0) 
            {
                matchIndex = matchLast ?
                             compareInfo.LastIndexOf(textString, findPattern, searchStart + searchLength - 1, searchLength, options) :
                             compareInfo.IndexOf(textString, findPattern, searchStart, searchLength, options); 

                matchLength = findPattern.Length; 
 
                if (matchIndex == -1)
                { 
                    break;
                }

                if (!matchWholeWord || IsAtWordBoundary(textString, matchIndex, matchLength, hasPreceedingSeparatorChar, hasFollowingSeparatorChar)) 
                {
                    break; 
                } 

                if (matchLast) 
                {
                    searchStart = 0;
                    searchLength = matchIndex + matchLength - 1;
                } 
                else
                { 
                    searchStart = matchIndex + 1; 
                    searchLength = textString.Length - searchStart;
                } 

                matchIndex = -1;
            }
 
            return matchIndex;
        } 
开发者ID:sjyanxin,项目名称:WPFSource,代码行数:45,代码来源:TextFindEngine.cs

示例4: AssertLastIndexOf

	void AssertLastIndexOf (string message, int expected, string source,
		char target, int idx, int len, CompareOptions opt, CompareInfo ci)
	{
		AssertEquals (message, expected,
			ci.LastIndexOf (source, target, idx, len, opt));
	}
开发者ID:carrie901,项目名称:mono,代码行数:6,代码来源:CompareInfoTest.jvm.cs


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