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

C# StringSplitOptions类代码示例

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

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



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


示例16: AssertTextEqual

        static void AssertTextEqual(string expected, string actual, string message, StringSplitOptions options = StringSplitOptions.RemoveEmptyEntries)
        {
            var eLines = expected.Split(new char[] { '\n', '\r' }, options);
            var aLines = actual.Split(new char[] { '\n', '\r' }, options);

            for (var i = 0; i < Math.Min(eLines.Length, aLines.Length); i++)
            {
                Assert.AreEqual(eLines[i], aLines[i], message);
            }

            Assert.AreEqual(eLines.Length, aLines.Length, message);
        }
开发者ID:paultyng,项目名称:JsBuildTools,代码行数:12,代码来源:Embedded+Resource+Tests.cs


示例17: TestSplit

 public void TestSplit(string words, StringSplitOptions splitOptions, bool splitOnCaseDifference, string[] expected)
 {
     var result = BaseRenameRule.Split(words, splitOptions, splitOnCaseDifference);
     Assert.AreEqual(expected.Length, result.Length);
     Console.WriteLine(result.Length);
     Console.WriteLine(result[0]);
     Console.WriteLine(result[1]);
     for (int i = 0; i < expected.Length; i++)
     {
         Assert.AreEqual(expected[i],result[i]);
     }
 }
开发者ID:rab8823,项目名称:MediaRenamer,代码行数:12,代码来源:BaseRenameRuleTests.cs


示例18: Split

        public static string[] Split(this string source, char[] spliter, int count, StringSplitOptions options)
        {
            var parts = source.Split(spliter, options);

            if (parts.Length <= count)
                return parts.ToArray();

            var partList = parts.Take(count - 1).ToList();
            partList.Add(string.Join(spliter[0].ToString(), parts, count - 1, parts.Length - count + 1));
            parts = partList.ToArray();
            return parts;
        }
开发者ID:theoxuan,项目名称:WebSocket4Net,代码行数:12,代码来源:Extensions.Silverlight.cs


示例19: ToArray

        /// <summary>
        /// 将当前字符串对象按照指定的分隔符转换为字符串数组
        /// </summary>
        /// <param name="str">当前要转换的字符串对象</param>
        /// <param name="split">指定的分隔字符列表</param>
        /// <param name="opt">指定转换后的数组是否要包含为空的项,默认为不包含</param>
        /// <returns>如果当前字符串为空,返回NULL,否则返回转换后的数组对象</returns>
        public static string[] ToArray(this string str, string split = ",", StringSplitOptions opt = StringSplitOptions.RemoveEmptyEntries)
        {
            if (General.IsNullable(str))
                return null;

            string[] strArray = null;
            if (General.IsNullable(split) || str.IndexOf(split) == -1)
                strArray = new string[] { str };
            else
                strArray = str.Split(split.ToCharArray(), opt);

            return strArray;
        }
开发者ID:chinaq,项目名称:micro-emall,代码行数:20,代码来源:StringExtend.cs


示例20: SplitUnlessBetweenDelimiters

		/// <summary>
		/// Splits a <c>string</c> using a Unicode character, unless that character is contained between matching <paramref name="start"/> and <paramref name="end"/> Unicode characters.
		/// </summary>
		/// <param name="st">The <c>string</c> to split.</param>
		/// <param name="separator">Unicode <c>char</c> that delimits the substrings in this instance.</param>
		/// <param name="start">The starting (left) container character. EX: '('.</param>
		/// <param name="end">The ending (right) container character. EX: ')'.</param>
		/// <returns>Array of <c>string</c> objects that are the resulting substrings.</returns>
		public static string[] SplitUnlessBetweenDelimiters(this string st, char separator, char start, char end, StringSplitOptions options = StringSplitOptions.None) {
			List<string> results = new List<string>();
			int containerLevel = 0;
			StringBuilder current = new StringBuilder();
			foreach (char c in st) {
				if (c == start) {
					++containerLevel;
					if (containerLevel == 1) {
						continue;
					}
				}

				if (c == end) {
					--containerLevel;
					if (containerLevel == 0) {
						continue;
					}
				}

				if (containerLevel == 0) {
					if (c == separator) {
						switch (options) {
							case StringSplitOptions.RemoveEmptyEntries: {
								if (current.Length > 0) {
									results.Add(current.ToString());
								}
								current.Length = 0;
								break;
							}
							case StringSplitOptions.None: {
								results.Add(current.ToString());
								current.Length = 0;
								break;
							}
						}
					} else {
						current.Append(c);
					}
				} else {
					current.Append(c);
				}
			}

			if (current.Length > 0) {
				results.Add(current.ToString());
			}

			return results.ToArray<string>();
		}
开发者ID:wfowler1,项目名称:LibBSP,代码行数:57,代码来源:StringExtensions.cs



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


鲜花

握手

雷人

路过

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

请发表评论

全部评论

专题导读
上一篇:
C# StringTable类代码示例发布时间:2022-05-24
下一篇:
C# StringSet类代码示例发布时间: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