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

Стрите двойные кавычки из строки в .NET.

Я пытаюсь сопоставить какой-то непоследовательно отформатированный HTML-код и вам нужно снять некоторые двойные кавычки.

Ток:

<input type="hidden">

Цель:

<input type=hidden>

Это неправильно, потому что я не избегаю этого:

s = s.Replace( "", "" );

Это неправильно, потому что не существует пустого символа (насколько мне известно):

s = s.Replace('"', '');

Что такое комбинация синтаксиса/escape-символа для замены двойных кавычек пустой строкой?

4b9b3361

Ответ 1

Я думаю, что ваша первая строка действительно работает, но я думаю, вам нужны четыре кавычки для строки, содержащей один (по крайней мере, в VB):

s = s.Replace("""", "")

для С# вам нужно будет избежать метки кавычек, используя обратную косую черту:

s = s.Replace("\"", "");

Ответ 2

s = s.Replace("\"", "");

Вам нужно использовать символ \, чтобы избежать символа двойной кавычки в строке.

Ответ 3

Вы можете использовать любой из них:

s = s.Replace(@"""","");
s = s.Replace("\"","");

... но мне интересно узнать, почему вы хотите это сделать? Я считал хорошей практикой сохранять значения атрибутов?

Ответ 4

Я уже не видел, чтобы мои мысли повторялись, поэтому я предлагаю вам посмотреть string.Trim в документации Microsoft на С#, вы можете добавить символ, который нужно обрезать, а не просто обрезать пустые пространства:

string withQuotes = "\"hellow\"";
string withOutQotes = withQuotes.Trim('"');

должно приводить к тому, что сOutQuotes будет "hello" вместо ""hello""

Ответ 5

s = s.Replace("\"",string.Empty);

Ответ 6

Вам нужно избегать двойной цитаты с обратной косой чертой.

s = s.Replace("\"","");

Ответ 7

С#: "\"", таким образом s.Replace("\"", "")

vb/vbs/vb.net: "" таким образом s.Replace("""", "")

Ответ 8

s = s.Replace(@ "" "," ");

Ответ 9

Это сработало для меня

//Sentence has quotes
string nameSentence = "Take my name \"Wesley\" out of quotes";
//Get the index before the quotes`enter code here`
int begin = nameSentence.LastIndexOf("name") + "name".Length;
//Get the index after the quotes
int end = nameSentence.LastIndexOf("out");
//Get the part of the string with its quotes
string name = nameSentence.Substring(begin, end - begin);
//Remove its quotes
string newName = name.Replace("\"", "");
//Replace new name (without quotes) within original sentence
string updatedNameSentence = nameSentence.Replace(name, newName);

//Returns "Take my name Wesley out of quotes"
return updatedNameSentence;

Ответ 10

s = s.Replace( """", "" )

Две кавычки рядом друг с другом будут функционировать как предназначенный "символ" внутри строки.