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


C# StringSplitOptions类代码示例

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


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

示例1: Split

        public static string[] Split(string str, char[] separators, int maxComponents, StringSplitOptions options)
        {
            ContractUtils.RequiresNotNull(str, "str");
            #if SILVERLIGHT || WP75
            if (separators == null) return SplitOnWhiteSpace(str, maxComponents, options);

            bool keep_empty = (options & StringSplitOptions.RemoveEmptyEntries) != StringSplitOptions.RemoveEmptyEntries;

            List<string> result = new List<string>(maxComponents == Int32.MaxValue ? 1 : maxComponents + 1);

            int i = 0;
            int next;
            while (maxComponents > 1 && i < str.Length && (next = str.IndexOfAny(separators, i)) != -1) {

                if (next > i || keep_empty) {
                    result.Add(str.Substring(i, next - i));
                    maxComponents--;
                }

                i = next + 1;
            }

            if (i < str.Length || keep_empty) {
                result.Add(str.Substring(i));
            }

            return result.ToArray();
            #else
            return str.Split(separators, maxComponents, options);
            #endif
        }
开发者ID:TerabyteX,项目名称:main,代码行数:31,代码来源:StringUtils.cs

示例2: Split

        public static string[] Split(string str, string separator, int maxComponents, StringSplitOptions options) {
            ContractUtils.RequiresNotNull(str, "str");
#if SILVERLIGHT || WP75
            if (string.IsNullOrEmpty(separator)) throw new ArgumentNullException("separator");

            bool keep_empty = (options & StringSplitOptions.RemoveEmptyEntries) != StringSplitOptions.RemoveEmptyEntries;

            List<string> result = new List<string>(maxComponents == Int32.MaxValue ? 1 : maxComponents + 1);

            int i = 0;
            int next;
            while (maxComponents > 1 && i < str.Length && (next = str.IndexOf(separator, i)) != -1) {

                if (next > i || keep_empty) {
                    result.Add(str.Substring(i, next - i));
                    maxComponents--;
                }

                i = next + separator.Length;
            }

            if (i < str.Length || keep_empty) {
                result.Add(str.Substring(i));
            }

            return result.ToArray();
#else
            return str.Split(new string[] { separator }, maxComponents, options);
#endif
        }
开发者ID:KonajuGames,项目名称:SharpLang,代码行数:30,代码来源:StringUtils.cs

示例3: Split

 public static string[] Split(string str, string[] delimeters, StringSplitOptions options = StringSplitOptions.None)
 {
     StringTokenizer.options = options;
     StringTokenizer.delimeters = delimeters;
     StringTokenizer.str = str;
     List<string> list = new List<string>();
     string cur = "";
     for (int i = 0; i <= str.Length; i++)
     {
         int d = getDelimeter(i);
         if (d == -1)
         {
             if (i < str.Length)
                 cur += str[i];
             else
             {
                 AddToList(list, cur);
                 cur = "";
             }
         }
         else
         {
             AddToList(list, cur);
             cur = "";
             AddToList(list, delimeters[d]);
             i += delimeters[d].Length - 1;
         }
     }
     return list.ToArray();
 }
开发者ID:ramyothman,项目名称:ifekra,代码行数:30,代码来源:StringTokenizer.cs

示例4: SplitOnWhiteSpace

        public static string[] SplitOnWhiteSpace(string str, int maxComponents, StringSplitOptions options) {
            ContractUtils.RequiresNotNull(str, "str");

            bool keep_empty = (options & StringSplitOptions.RemoveEmptyEntries) != StringSplitOptions.RemoveEmptyEntries;

            List<string> result = new List<string>(maxComponents == Int32.MaxValue ? 1 : maxComponents + 1);

            int i = 0;
            int next;
            while (maxComponents > 1 && i < str.Length && (next = IndexOfWhiteSpace(str, i)) != -1) {

                if (next > i || keep_empty) {
                    result.Add(str.Substring(i, next - i));
                    maxComponents--;
                }

                i = next + 1;
            }

            if (i < str.Length || keep_empty) {
                result.Add(str.Substring(i));
            }

            return result.ToArray();
        }
开发者ID:jxnmaomao,项目名称:ironruby,代码行数:25,代码来源:StringUtils.cs

示例5: Split

 public static string[] Split(string words, StringSplitOptions splitOptions, bool splitOnCaseDifference)
 {
     if (string.IsNullOrEmpty(words))
     {
         return new string[] { words };
     }
     string[] initial = words.Split(_separators, splitOptions);
     List<string> final = new List<string>();
     int finalIndex = 0;
     for (int i = 0; i < initial.Length; i++)
     {
         StringBuilder sb = new StringBuilder();
         string w = initial[i];
         bool isUpper = char.IsUpper(w[0]);
         sb.Append(w[0]);
         for (int c = 1; c < w.Length; c++)
         {
             if (splitOnCaseDifference && char.IsUpper(w[c]))
             {
                 final.Insert(finalIndex++, sb.ToString());
                 sb.Clear();
             }
             sb.Append(w[c]);
         }
         if (sb.Length > 0)
         {
             final.Insert(finalIndex++, sb.ToString());
             sb.Clear();
         }
     }
     return final.ToArray();
 }
开发者ID:rab8823,项目名称:MediaRenamer,代码行数:32,代码来源:BaseRenameRule.cs

示例6: SplitWithSeparator

        public static IEnumerable<KeyValuePair<string, string>> SplitWithSeparator(this string str, IEnumerable<string> separator,
			StringComparison comparisonType = StringComparison.CurrentCulture, StringSplitOptions options = StringSplitOptions.None)
        {
            IEnumerable<KeyValuePair<int, string>> indexes = new Dictionary<int, string>();
            indexes = separator.Aggregate(indexes, (current, s) => current.Union(str.IndexOfAll(s, comparisonType).ToDictionaryValue(i => str.Substring(i, s.Length))));
            int lastIndex = 0;
            var list = new List<KeyValuePair<string, string>>();
            foreach (KeyValuePair<int, string> kvp in indexes.OrderBy(a => a.Key))
            {
                string substring = str.Substring(lastIndex, kvp.Key - lastIndex);
                list.Add(new KeyValuePair<string, string>(substring, kvp.Value));
                lastIndex += substring.Length + kvp.Value.Length;
            }
            list.Add(new KeyValuePair<string, string>(str.Substring(lastIndex), null));
            return list.Where(a =>
            {
                switch (options)
                {
                    case StringSplitOptions.None:
                        return true;
                    case StringSplitOptions.RemoveEmptyEntries:
                        return a.Key != "";
                    default:
                        throw new NotSupportedException("unrecognized StringSplitOptions");
                }
            });
        }
开发者ID:kellyselden,项目名称:Libraries,代码行数:27,代码来源:StringExtensions.cs

示例7: StringParser

 /// <summary>
 /// Initializes a new instance of the <see cref="StringParser"/> class.
 /// </summary>
 /// <param name="value">The value.</param>
 /// <param name="separator">The separator.</param>
 /// <param name="splitOptions">The split options.</param>
 public StringParser(string value, string separator, StringSplitOptions splitOptions)
 {
     if (!string.IsNullOrWhiteSpace(value) && !string.IsNullOrEmpty(separator))
     {
         _tokens = value.Split(new string[] { separator }, splitOptions);
     }
 }
开发者ID:rahilkidwai,项目名称:Net.Utility,代码行数:13,代码来源:StringParser.cs

示例8: Polyline

        /// <summary>
        /// Builds a polyline from a string. Optional : keep a subpart of the complete polyline.
        /// </summary>
        /// <param name="line">The input string, under the format [[x_1,y_1],...,[x_n,y_n]].</param>
        /// <param name="partToKeep">The percentage of the first part of the string to keep.</param>
        public Polyline(string line, double partToKeep = 1.1f)
        {
            StringSplitOptions sso = new StringSplitOptions();
            string[] arr = line.Split(new string[] { "[[" }, sso);
            string pl = arr[1];
            pl = pl.Replace("[", "");
            pl = pl.Replace("]", "");
            pl = pl.Replace("\"", "");
            List<string> elts = pl.Split(',').ToList();

            if (partToKeep < 1f)
            {
                int finalSize = (int)Math.Floor(elts.Count * partToKeep / 2 + 1) * 2;
                List<string> elts2 = new List<string>();
                for (int i = 0; i < finalSize; i++)
                    elts2.Add(elts[i]);
                elts = elts2;
            }

            _polylineX = new double[elts.Count / 2];
            _polylineY = new double[elts.Count / 2];

            for (int i = 0; i < _polylineX.Length; i++)
            {
                _polylineX[i] = Convert.ToDouble(elts[i * 2], CultureInfo.GetCultureInfo("en-US"));
                _polylineY[i] = Convert.ToDouble(elts[i * 2 + 1], CultureInfo.GetCultureInfo("en-US"));
            }
        }
开发者ID:turboNinja2,项目名称:ECML-PKDD-15--Taxi-Trajectory-Prediction-I,代码行数:33,代码来源:Polyline.cs

示例9: split_safe

        public static string[] split_safe(this string s, char[] separator, StringSplitOptions stringSplitOptions)
        {
            if (s == null)
            {
                return new string[0];
            }

            return s.Split(separator, stringSplitOptions);
        }
开发者ID:pkdevboxy,项目名称:chocolatey.org,代码行数:9,代码来源:StringExtensions.cs

示例10: ToArray

        public static string[] ToArray(this string input, StringSplitOptions option, params char[] delimiter)
        {
            if (input == null)
            {
                return null;
            }

            return input.Split(delimiter, option);
        }
开发者ID:yodamaster,项目名称:docfx,代码行数:9,代码来源:StringExtension.cs

示例11: GetAllSettingsAsString

 private static IEnumerable<string> GetAllSettingsAsString(
     IEnumerable<string> returns,
     char separator = ',',
     StringSplitOptions options = StringSplitOptions.RemoveEmptyEntries)
 {
     return CreateSubjectUnderTest(
         string.Join(separator.ToString(), returns))
         .GetAllSettingsAsString(Key, separator, options);
 }
开发者ID:c4rm4x,项目名称:C4rm4x.WebApi,代码行数:9,代码来源:SettingsManagerExtensionTest.GetAllSettingsAsString.cs

示例12: Split

        /// <summary>
        ///     Returns a string array that contains the substrings in this string that are
        ///     delimited by elements of a specified string array. A parameter specifies
        ///     whether to return empty array elements.
        /// </summary>
        /// <exception cref="ArgumentNullException">The string can not be null.</exception>
        /// <exception cref="ArgumentNullException">The separator can not be null.</exception>
        /// <param name="value">The string to split.</param>
        /// <param name="separators">
        ///     An array of strings that delimit the substrings in this string, an empty
        ///     array that contains no delimiters, or null.
        /// </param>
        /// <param name="stringSplitOption">
        ///     <see cref="System.StringSplitOptions.RemoveEmptyEntries" /> to omit empty array elements
        ///     from the array returned; or System.StringSplitOptions.None to include empty
        ///     array elements in the array returned.
        /// </param>
        /// <returns>
        ///     Returns an array whose elements contain the substrings in this string that are delimited
        ///     by one or more strings in separator.
        /// </returns>
        public static String[] Split( this String value,
                                      StringSplitOptions stringSplitOption,
                                      params String[] separators )
        {
            value.ThrowIfNull( nameof( value ) );
            separators.ThrowIfNull( nameof( separators ) );

            return value.Split( separators, stringSplitOption );
        }
开发者ID:MannusEtten,项目名称:Extend,代码行数:30,代码来源:String.Split.cs

示例13: SplitLines

        /// <summary>
        ///     Splits the given string at each line break (<see cref="Environment.NewLine" />).
        /// </summary>
        /// <example>value can not be null.</example>
        /// <param name="value">The string to split.</param>
        /// <param name="stringSplitOptions">
        ///     <see cref="System.StringSplitOptions.RemoveEmptyEntries" /> to omit empty array elements
        ///     from the array returned; or System.StringSplitOptions.None to include empty
        ///     array elements in the array returned.
        /// </param>
        /// <returns>
        ///     Returns an array whose elements contain the substrings in this string that are delimited by
        ///     <see cref="Environment.NewLine" />.
        /// </returns>
        public static String[] SplitLines( this String value, StringSplitOptions stringSplitOptions )
        {
            value.ThrowIfNull( nameof( value ) );

            return value.Split( new[]
            {
                Environment.NewLine
            },
                                stringSplitOptions );
        }
开发者ID:MannusEtten,项目名称:Extend,代码行数:24,代码来源:String.SplitLines.cs

示例14: CSVPipe

 /// <summary>
 /// Splits a given strings into elements by a given sperator.
 /// </summary>
 /// <param name="IEnumerator">An enumerator of strings.</param>
 /// <param name="IgnoreLines">A regular expression indicating which input strings should be ignored. Default: All lines starting with a '#'.</param>
 /// <param name="Seperators">An array of string used to split the input strings.</param>
 /// <param name="StringSplitOptions">Split options, e.g. remove empty entries.</param>
 /// <param name="ExpectedNumberOfColumns">If the CSV file had a schema, a specific number of columns can be expected. If instead it is a list of values no such value can be expected.</param>
 /// <param name="FailOnWrongNumberOfColumns">What to do when the current and expected number of columns do not match.</param>
 /// <param name="TrimColumns">Remove leading and trailing whitespaces.</param>
 /// <returns>An enumeration of string arrays.</returns>
 public static IEnumerable<String[]> CSVPipe(this IEnumerator<String> IEnumerator,
                                                  Regex               IgnoreLines                = null,
                                                  String[]            Seperators                 = null,
                                                  StringSplitOptions  StringSplitOptions         = StringSplitOptions.None,
                                                  UInt16?             ExpectedNumberOfColumns    = null,
                                                  Boolean             FailOnWrongNumberOfColumns = false,
                                                  Boolean             TrimColumns                = true)
 {
     return new CSVReaderPipe(IgnoreLines, Seperators, StringSplitOptions, ExpectedNumberOfColumns, FailOnWrongNumberOfColumns, TrimColumns, null, IEnumerator);
 }
开发者ID:subbuballa,项目名称:Styx,代码行数:21,代码来源:CSVPipeExtensions.cs

示例15: stringToIntArray

        public static int[] stringToIntArray(string input, char[] separator, StringSplitOptions option)
        {
            string[] tempArray = input.Trim().Split(separator, option);
            int[] result = new int[tempArray.Length];
            for (int i = 0; i < tempArray.Length; i++)
            {
                result[i] = int.Parse(tempArray[i].Trim());
            }

            return result;
        }
开发者ID:Kiza,项目名称:POPTVR_WPF,代码行数:11,代码来源:DataFileReader.cs


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