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


C# MutableString.IndexOf方法代码示例

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


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

示例1: IndexOf

        // The IndexOf and InternalSplit helper methods are necessary because Ruby semantics of these methods
        // differ from .NET semantics. IndexOf("") returns the next character, which is reflected in the 
        // InternalSplit method which also flows taint

        private static int IndexOf(MutableString/*!*/ str, MutableString/*!*/ separator, int index) {
            if (separator.Length > 0)
                return str.IndexOf(separator, index);
            else
                return index + 1;
        }
开发者ID:mscottford,项目名称:ironruby,代码行数:10,代码来源:MutableStringOps.cs

示例2: RemoveSubstringInPlace

        public static MutableString RemoveSubstringInPlace(MutableString/*!*/ self, [NotNull]MutableString/*!*/ searchStr) {
            if (searchStr.IsEmpty) {
                return searchStr.Clone();
            }

            int index = self.IndexOf(searchStr);
            if (index < 0) {
                return null;
            }

            RemoveSubstringInPlace(self, index, searchStr.Length);
            return searchStr.Clone();
        }
开发者ID:mscottford,项目名称:ironruby,代码行数:13,代码来源:MutableStringOps.cs

示例3: Include

 public static bool Include(MutableString/*!*/ str, [DefaultProtocol, NotNull]MutableString/*!*/ subString) {
     return str.IndexOf(subString) != -1;
 }
开发者ID:mscottford,项目名称:ironruby,代码行数:3,代码来源:MutableStringOps.cs

示例4: Index

        public static object Index(MutableString/*!*/ self, 
            [DefaultProtocol, NotNull]MutableString/*!*/ substring, [DefaultProtocol, Optional]int start) {

            if (!NormalizeStart(self, ref start)) {
                return null;
            }
            int result = self.IndexOf(substring, start);
            return (result != -1) ? ScriptingRuntimeHelpers.Int32ToObject(result) : null;
        }
开发者ID:mscottford,项目名称:ironruby,代码行数:9,代码来源:MutableStringOps.cs

示例5: GetSubstring

 public static MutableString GetSubstring(MutableString/*!*/ self, [NotNull]MutableString/*!*/ searchStr) {
     return (self.IndexOf(searchStr) != -1) ? searchStr.Clone() : null;
 }
开发者ID:jxnmaomao,项目名称:ironruby,代码行数:3,代码来源:MutableStringOps.cs

示例6: ReadLine

        private static MutableString ReadLine(MutableString/*!*/ content, MutableString separator, ref int position) {
            int length = content.GetByteCount();
            if (position >= length) {
                return null;
            }

            int oldPosition = position;

            if (separator == null) {
                position = length;
            } else if (separator.IsEmpty) {
                // skip initial ends of line:
                while (oldPosition < length && content.GetByte(oldPosition) == '\n') {
                    oldPosition++;
                }

                position = content.IndexOf(ParagraphSeparator, oldPosition);
                position = (position != -1) ? position + 1 : length;
            } else {
                position = content.IndexOf(separator, oldPosition);
                position = (position != -1) ? position + separator.Length : length;
            }

            return content.GetSlice(oldPosition, position - oldPosition);
        }
开发者ID:jxnmaomao,项目名称:ironruby,代码行数:25,代码来源:StringIO.cs

示例7: Index

        public static object Index(MutableString/*!*/ self, 
            [DefaultProtocol, NotNull]MutableString/*!*/ substring, [DefaultProtocol, Optional]int start) {

            self.SwitchToCharacters();
            if (!NormalizeStart(self.GetCharCount(), ref start)) {
                return null;
            }

            self.RequireCompatibleEncoding(substring);
            substring.SwitchToCharacters();

            int result = self.IndexOf(substring, start);
            return (result != -1) ? ScriptingRuntimeHelpers.Int32ToObject(result) : null;
        }
开发者ID:jxnmaomao,项目名称:ironruby,代码行数:14,代码来源:MutableStringOps.cs

示例8: IsBinaryData

        public static object IsBinaryData(UnaryOpStorage/*!*/ isEmptyStorage, RubyContext/*!*/ context, MutableString/*!*/ self) {

            var site = isEmptyStorage.GetCallSite("empty?");
            if (RubyOps.IsTrue(site.Target(site, context, self))) {
                return null;
            }

            return ScriptingRuntimeHelpers.BooleanToObject((self.IsBinary ? self.IndexOf(0) : self.IndexOf('\0')) >= 0);
        }
开发者ID:jxnmaomao,项目名称:ironruby,代码行数:9,代码来源:BuiltinsOps.cs

示例9: InternalSplit

        private static RubyArray/*!*/ InternalSplit(MutableString/*!*/ str, MutableString separator, int limit) {
            RubyArray result;
            if (limit == 1) {
                // returns an array with original string
                result = new RubyArray(1);
                result.Add(str);
                return result;
            }

            if (separator == null || separator.StartsWith(' ') && separator.GetLength() == 1) {
                return WhitespaceSplit(str, limit);
            }

            if (separator.IsEmpty) {
                return CharacterSplit(str, limit);
            }

            if (limit <= 0) {
                result = new RubyArray();
            } else {
                result = new RubyArray(limit + 1);
            }

            // TODO: invalid characters, k-coding?
            str.PrepareForCharacterRead();
            separator.PrepareForCharacterRead();
            str.RequireCompatibleEncoding(separator);

            int separatorLength = separator.GetCharCount();
            int i = 0;
            int next;
            while ((limit <= 0 || result.Count < limit - 1) && (next = str.IndexOf(separator, i)) != -1) {
                result.Add(str.CreateInstance().Append(str, i, next - i).TaintBy(str));
                i = next + separatorLength;
            }

            result.Add(str.CreateInstance().Append(str, i).TaintBy(str));

            if (limit == 0) {
                RemoveTrailingEmptyItems(result);
            }

            return result;
        }
开发者ID:,项目名称:,代码行数:44,代码来源:

示例10: Include

 public static bool Include(MutableString/*!*/ str, [DefaultProtocol, NotNull]MutableString/*!*/ subString) {
     str.RequireCompatibleEncoding(subString);
     str.PrepareForCharacterRead();
     subString.PrepareForCharacterRead();
     return str.IndexOf(subString) != -1;
 }
开发者ID:,项目名称:,代码行数:6,代码来源:

示例11: GetSubstring

 public static MutableString GetSubstring(MutableString/*!*/ self, [NotNull]MutableString/*!*/ searchStr) {
     if (self.IndexOf(searchStr) != -1) {
         return searchStr.Clone();
     } else {
         return null;
     }
 }
开发者ID:mscottford,项目名称:ironruby,代码行数:7,代码来源:MutableStringOps.cs

示例12: IsBinaryData

 public static object IsBinaryData(RubyContext/*!*/ context, MutableString/*!*/ self) {
     if (RubyOps.IsTrue(_Empty.Target(_Empty, context, self))) {
         return null;
     }
     // TODO: should be self.IndexOf(0)?
     return self.IndexOf('\0') != -1;
 }
开发者ID:bclubb,项目名称:ironruby,代码行数:7,代码来源:BuiltinsOps.cs

示例13: ReplaceSubstring

        public static MutableString ReplaceSubstring(MutableString/*!*/ self,
            [NotNull]MutableString/*!*/ substring, [DefaultProtocol, NotNull]MutableString/*!*/ value) {

            int index = self.IndexOf(substring);
            if (index == -1) {
                throw RubyExceptions.CreateIndexError("string not matched");
            }

            return ReplaceSubstring(self, index, substring.Length, value);
        }
开发者ID:mscottford,项目名称:ironruby,代码行数:10,代码来源:MutableStringOps.cs

示例14: SkipToUnescapedForwardSlash

        private static int SkipToUnescapedForwardSlash(MutableString/*!*/ pattern, int i) {
            while (i < pattern.Length) {
                i = pattern.IndexOf('/', i);
                if (i <= 0) {
                    return i;
                }

                if (pattern.GetChar(i - 1) != '\\') {
                    return i;
                }

                i++;
            }
            return -1;
        }
开发者ID:joshholmes,项目名称:ironruby,代码行数:15,代码来源:RubyRegexOps.cs


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