Подтвердить что ты не робот

Разделить строку на строку, а не символ

Я хочу разбить строку gridview на тег html. Как я могу сделать это предпочтительно в С#?

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

Ответ 1

Да. Используйте перегрузка

String.Split(String[], StringSplitOptions)

или

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

Пример:

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

Но обратите внимание на комментарий StrixVaria выше. Анализ HTML является неприятным, если вы не являетесь экспертной разгрузкой, которая работает кому-то другому.

Ответ 2

Попробуйте следующее:

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

Ответ 3

Одна из перегрузок String.Split принимает a String[] и a StringSplitOptions - это требуемая перегрузка:

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

или

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

в зависимости от того, что вы хотите сделать с пустыми записями (т.е. когда один разделитель сразу следует за другим).

Тем не менее, я настоятельно призываю вас прислушаться к комментарию @StrixVaria...

Ответ 4

В дополнение к string.split вы можете использовать Regex.Split(в System.Text.RegularExpressions):

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

Ответ 5

Чтобы разбить строку на строку, вы должны использовать это.

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

Ответ 6

Используйте одну из перегрузок string.Split(...). Но, как говорится в комментарии, возможно, другой способ сделать это будет предпочтительным.

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

Ответ 7

Это один из тех случаев, когда я иду в старую школу VB и использую только что использую:

Split(expression, delimiter)

или в С#

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