繁体   English   中英

在字符串上拆分字符串而不是字符

[英]Split a string on a string not a character

我想在html标签上拆分gridview行。 我怎样才能在C#中做到这一点?

e.row.cells[1].Text.Split("htmltag")

是。 使用过载

String.Split(String[], StringSplitOptions)

要么

String.Split(String[], int, StringSplitOptions)

例:

var split = e.row.cells[1].Text.Split(
                new[] { "</b>" },
                StringSplitOptions.RemoveEmptyEntries
            );

但请注意上面的StrixVaria的评论。 解析HTML是令人讨厌的,所以除非你是专家卸载工作给别人。

String.Split的一个重载需要String[]StringSplitOptions - 这是你想要的重载:

e.row.cells[1].Text.Split(new string[] { "</b>" }, StringSplitOptions.None);

要么

e.row.cells[1].Text.Split(new string[] { "</b>" }, StringSplitOptions.RemoveEmptyEntries);

取决于你想要用空条目做什么(即当一个分隔符紧跟另一个分隔符时)。

但是,我会敦促你注意@ StrixVaria的评论......

除了string.split之外,您还可以使用Regex.Split(在System.Text.RegularExpressions中):

string[] lines = Regex.Split(.row.cells[1].Text, "htmlTag");

试试这个:

e.Row.Cells[1].Text.Split( new string[] { "</b>" }, StringSplitOptions.None );

要使用字符串拆分字符串,您可以使用它。

string test = "hello::there";
string[] array = test.Split(new string[]{ "::" }, StringSplitOptions.RemoveEmptyEntries);

使用string.Split(...)的重载之一。 但正如评论所说,也许另一种做法的方法是可取的。

e.row.cells[1].Text.Split(new [] { "</b>"}, StringSplitOptions.None);

这是我去老学校VB并使用的时间之一:

Split(expression, delimiter)

或者在C#中

Microsoft.VisualBasic.Strings.Split(expression,delimiter)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM