comment puis-je remplacer la double citation dans vb.net?
ça ne marche pas ce code
name.Replace("""," ")
Vous devez utiliser un guillemet double dans ces guillemets (et obtenir la valeur de retour - String.Replace ne fonctionne pas sur la chaîne elle-même, il renvoie une nouvelle chaîne):
name = name.Replace(""""," ")
Au lieu d'une méthode de "liaison de données échappée" de ...
name = name.Replace("""", "")
Vous pourriez être explicite et un peu plus lisible ...
name = name.Replace(ControlChars.DblQuote, "")
Et BTW, au lieu de penser à cela comme un retour d’une NOUVELLE CHAÎNE; Il est préférable de penser à REPLACE comme faisant partie de la classe STRING associée à l'instance 'name'. Si c'est perdre l'ancienne valeur de nom que vous ne voulez pas, alors simplement ...
Dim aNewString$ = name.Replace(ControlChars.DblQuote, "")
Et 'nom' restera inchangé.
name = name.Replace(Chr(34), "")
vous devez retourner la chaîne résultante en chaîne et également échapper les guillemets doubles entre guillemets ou "\"
name = name.Remove("""", String.Empty)
J'en ai eu un vilain boulot où, malgré tous mes efforts, je ne pouvais pas faire fonctionner Replace()
. En fin de compte, il s'est avéré que les chaînes que j'essayais de nettoyer avaient des caractères complètement différents qui ressemblaient à des guillemets. Un génie avait modifié un fichier de script à l'aide de Word. "hello"
est devenu “hello”
. Subtil ou quoi? En examinant le fichier avec un éditeur hexadécimal, la citation d'ouverture était la valeur à trois caractères 0xe2 0x80 0x9c
, et la plus proche était 0xe2 0x80 0x9d
. Pas étonnant que le remplacement ait échoué!
'Cette partie consiste à supprimer la "marque dans la chaîne
Dim GetDate31 As String = Date31(16).Replace(Chr(34), "")