заменить "в vb.net - PullRequest
       52

заменить "в vb.net

16 голосов
/ 16 марта 2010

как мне заменить двойную кавычку в vb.net?

не работает этот код

name.Replace("""," ")

Ответы [ 6 ]

17 голосов
/ 16 марта 2010

Вам необходимо использовать двойные кавычки в этих кавычках (и получить возвращаемое значение - String.Replace не работает с самой строкой, он возвращает новую строку):

name = name.Replace(""""," ")
12 голосов
/ 16 марта 2010

Вместо "канала данных сбежал" метод ...

name = name.Replace("""", "")

Вы можете быть явным и несколько более читабельным ...

name = name.Replace(ControlChars.DblQuote, "")

И, кстати, вместо того, чтобы думать об этом как о возвращении НОВОГО СТРОКА; лучше рассматривать REPLACE как часть класса STRING, связанного с экземпляром name. Если он теряет старое значение имени, которое вы не хотите, то просто ...

Dim aNewString$ = name.Replace(ControlChars.DblQuote, "")

И «имя» останется без изменений.

7 голосов
/ 29 апреля 2015
name = name.Replace(Chr(34), "")
1 голос
/ 16 марта 2010

вы должны вернуть результирующую строку обратно в строку, а также экранировать двойные кавычки с двойной кавычкой или "\"

name = name.Remove("""", String.Empty)
0 голосов
/ 30 января 2018

'Эта часть предназначена для удаления "отметки в строке

Dim GetDate31 As String = Date31(16).Replace(Chr(34), "")
0 голосов
/ 24 ноября 2017

У меня был неприятный случай, когда я пытался, как мог, я не мог заставить Replace() работать. В итоге оказалось, что строки, которые я пытался очистить, каким-то образом получили совершенно других персонажей, которые просто выглядели как двойные кавычки. Гений отредактировал файл сценария с помощью Word, поэтому "hello" стал “hello”. Тонкий или как? Глядя на файл с помощью шестнадцатеричного редактора, открывающая кавычка была трехзначным значением 0xe2 0x80 0x9c, а ближе - 0xe2 0x80 0x9d. Не удивительно, что замена не удалась!

...