2013-03-18 3 views
-2

Я чувствую, что это должно быть довольно просто, но я борюсь с этим. Если у меня есть строка, содержащая двойную кавычку, и я хочу удалить эту строку, как бы я это сделал?Заменить строку, содержащую двойную кавычку

Если у меня есть этот текст:

The quick "brown" fox jumps over the "lazy" dog 

Я думаю, с помощью этого:

.Replace("The quick \"brown\" fox jumps over the \"lazy\" dog", ""); 

, но это не похоже, признают строку с двойными кавычками. Все поиски, которые я придумал, похоже, хотят заменить сами кавычки, а не строку, содержащую кавычки.

+2

Я не уверен, в чем проблема. Я просто проверил ваш образец кода в LINQPad, и он работал нормально. – rossipedia

+0

Хммм, может быть, я делаю что-то еще неправильно. Это упрощенный пример того, что я пытаюсь сделать. Строка, которая у меня есть, довольно большая, и есть функция Javascript, которую я пытаюсь разбить, и она не распознает ее. –

+0

Вы назначаете результат замены на новую строку или ожидаете, что она изменит существующую строку? –

ответ

5

Если то, что вы хотите, чтобы просто вырезать кавычки сами, используйте:

var input = "The quick \"brown\" fox jumps over the \"lazy\" dog"; 
var output = input.Replace("\"", string.Empty); 
// output == "The quick brown fox jumps over the lazy dog" 

Если вы хотите, чтобы вычистить кавычки и текст между кавычками, вам нужно будет использовать RegEx.Replace, например:

var input = "The quick \"brown\" fox jumps over the \"lazy\" dog"; 
var output = RegEx.Replace(input, "\"[^\"]*\"", string.Empty); 
// output == "The quick fox jumps over the dog" 
+0

Я думаю, что op хочет заменить текст, содержащий цитаты, с пустой строкой. Это просто удаляет цитаты – EdmundYeung99

+0

@ EdmundYeung99 лучше? –

+0

RegEx.Replace - хорошая идея, но простая строка. Среда тоже должна была работать. Надеюсь, он решает проблему op :) – EdmundYeung99

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