использовать строку c # split с несколькими разделителями - PullRequest
2 голосов
/ 08 сентября 2011

У меня есть эта строка

"abc,\u000Bdefgh,\u000Bjh,\u000Bkl"

И мне нужно разбить строку в c #, каждый раз, когда появляется ,\u000B должно быть новое слово.

Я пробовал это:

string[] newString = myString.Split(",\u000B");

но это не сработало, как я могу это сделать?

Ответы [ 4 ]

10 голосов
/ 08 сентября 2011

Измените свою команду разделения следующим образом:

string[] newString = ip.Split(new[]{",\u000B"}, StringSplitOptions.RemoveEmptyEntries);

Или используйте StringSplitOptions.None, если вы хотите сохранить пустые записи во время разделения.

3 голосов
/ 08 сентября 2011
string[] newString = myString.Split(new string[] { ",\u000B" }, StringSplitOptions.None); 

Работает на моей машине

2 голосов
/ 08 сентября 2011
        string myString = "abc,\u000Bdefgh,\u000Bjh,\u000Bkl";

        string[] a = myString.Split(new string[] { ",\u000B" }, StringSplitOptions.RemoveEmptyEntries);
0 голосов
/ 03 декабря 2013

Вы могли бы использовать короткую символьную escape-нотацию: ", \ v" вместо.

Short   UTF-16  Description
--------------------------------------------------------------------
\'      \u0027  allow to enter a ' in a character literal, e.g. '\''
\"      \u0022  allow to enter a " in a string literal, e.g. "this is the double quote (\") character"
\\      \u005c  allow to enter a \ character in a character or string literal, e.g. '\\' or "this is the backslash (\\) character"
\0      \u0000  allow to enter the character with code 0
\a      \u0007  alarm (usually the HW beep)
\b      \u0008  back-space
\f      \u000c  form-feed (next page)
\n      \u000a  line-feed (next line)
\r      \u000d  carriage-return (move to the beginning of the line)
\t      \u0009  (horizontal-) tab
\v      \u000b  vertical-tab
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...