2013-10-24 4 views
0

Я получаю значение cookie как параметр. Мне нужно разделить значение cookie (имя, значение).Как разбить следующую строку?

string Cookie ="secureToken_sdfsdfbsadbfsdhbh = Tdne68JhO5baix2Ey_K0ICV1HAAFvUP5BA=="; 
string[] cookieData = Cookie.Split('=') 

Это даже последний символ равного. Мне нужен следующий выход.

cookie[0]=secureToken_sdfsdfbsadbfsdhbh 
cookie[1]= Tdne68JhO5baix2Ey_K0ICV1HAAFvUP5BA== 

Он должен рассматривать только первую равную character.after, что она не должна пролил строковое

ответ

4

использование:

Cookie.Split(new char[] { '=' }, 2) 

будет ограничить разделение на 2 строки

1
string Cookie ="secureToken_sdfsdfbsadbfsdhbh = Tdne68JhO5baix2Ey_K0ICV1HAAFvUP5BA=="; 
string[] cookieData = Cookie.Split(new string[] {" = "}, StringSplitOptions.RemoveEmptyEntries); 

foreach (var item in cookieData) 
{ 
    Console.WriteLine(item); 
} 

Выход будет;

secureToken_sdfsdfbsadbfsdhbh 
Tdne68JhO5baix2Ey_K0ICV1HAAFvUP5BA== 

Здесь в Demonstration.

EDIT: Поскольку вам нужна только 2 разделенная часть, ограничение будет лучше, чем решение, описанное в wudzik answers.

+0

Я думаю, что с помощью String.split с параметром счетчика является немного чище решение, но это хороший ответ, хотя :) – wudzik

+0

@wudzik Вы правы. Я только что обновил свой ответ. –

0
string str= "secureToken_sdfsdfbsadbfsdhbh = Tdne68JhO5baix2Ey_K0ICV1HAAFvUP5BA=="; 
string[] separator = { " = " }; 
string[] strarr = str.Split(separator, StringSplitOptions.None); 
foreach (string s in strarr) 
{ 
    Console.WriteLine(s); 
} 
Console.ReadKey(); 
+0

такое же решение, как Soner's, другой синтаксис, новый ответ должен добавить что-то – wudzik

Смежные вопросы