【问题标题】:.Net Split with split characters retained [duplicate].Net Split 保留分割字符[重复]
【发布时间】:2012-11-15 06:50:59
【问题描述】:

可能重复:
C# split string but keep split chars / separators

是否有一种简单的方法来执行 .Net 字符串 split() 函数,将原始拆分字符留在结果中?

这样:

"some text {that|or} another".Split('{','|','}'); 

会产生一个数组:

[0] = "some text "
[1] = "{"
[2] = "that"
[3] = "|"
...

最好没有正则表达式。

【问题讨论】:

标签: c# string parsing split


【解决方案1】:

查看this post

第一个答案是正则表达式解决方案,第二个答案是非正则表达式解决方案......

在概念中...

string source = "123xx456yy789";
foreach (string delimiter in delimiters)
    source = source.Replace(delimiter, ";" + delimiter + ";");
string[] parts = source.Split(';');

【讨论】:

  • 这个答案我被否决了。你是个幸运的人!
  • @Devtron:不鼓励仅链接答案,即使它们链接到 stackoverflow。这也继续提供一个例子。 (顺便猜一下)
  • @Guvante mine 有一个更好的例子,在答案列表的后面:)
  • @Devtron 但要复杂得多....
  • 但这不适用于“;”人物。它可能不是很复杂,但它有一个明显的错误。
【解决方案2】:

您可以使用String.IndexOf Method (String, Int32) 自行查找所有初始分隔符,并将它们与String.Split 的结果合并

【讨论】:

    猜你喜欢
    • 2013-02-01
    • 1970-01-01
    • 2015-10-25
    • 1970-01-01
    • 2014-03-18
    • 1970-01-01
    • 1970-01-01
    • 2012-09-12
    • 1970-01-01
    相关资源
    最近更新 更多