Wie doppelte Anführungszeichen in eine Zeichenfolge hinzuzufügen, die in einer Variable ist?

StackOverflow https://stackoverflow.com/questions/3905946

  •  29-09-2019
  •  | 
  •  

Frage

Ich habe Variable wie:

string title = string.empty;

Mein Bedürfnis ist, dass String, was auch immer an sie übergeben wird, habe ich mit in einem doppelten Anführungszeichen den Inhalt innerhalb eines div angezeigt werden soll. Also habe ich so etwas wie geschrieben haben:

...
...
<div>"+ title +@"</div>
...
...

Aber wie die doppelten Anführungszeichen hier hinzufügen? So dass es wie angezeigt werden:

"How to add double quotes"
War es hilfreich?

Lösung

Sie müssen sie entkommen, indem sie (wörtlich Stringliteral) verdoppelt:

string str = @"""How to add doublequotes""";

oder mit einem normalen Stringliteral Sie sie mit einem \ entkommen:

string str = "\"How to add doublequotes\"";

Andere Tipps

So Sie im Wesentlichen fragen, wie doublequotes speichern innerhalb einer String-Variablen? Zwei Lösungen dafür:

var string1 = @"""inside quotes""";
var string2 = "\"inside quotes\"";

Um vielleicht machen es ein bisschen mehr klar, was passiert:

var string1 = @"before ""inside"" after";
var string2 = "before \"inside\" after";

Wenn ich Ihre Frage richtig zu verstehen, vielleicht können Sie versuchen, diese:

string title = string.Format("<div>\"{0}\"</div>", "some text");

Wenn Sie dies oft tun, und Sie möchten, dass diese Reiniger in Code sein, Sie möchten vielleicht eine Erweiterungsmethode für diese haben.

Das ist wirklich offensichtlich Code, aber immer noch finde ich es nützlich zu greifen sein und machen Sie spart Zeit.

  /// <summary>
    /// Put a string between double quotes.
    /// </summary>
    /// <param name="value">Value to be put between double quotes ex: foo</param>
    /// <returns>double quoted string ex: "foo"</returns>
    public static string AddDoubleQuotes(this string value)
    {
        return "\"" + value + "\"";
    }

Dann können Sie rufen foo.AddDoubleQuotes () oder "foo" .AddDoubleQuotes (), auf jeder Zeichenfolge, die Sie wie.

Hope diese Hilfe.

Ein weiterer Hinweis:

    string path = @"H:\\MOVIES\\Battel SHIP\\done-battleship-cd1.avi"; 
    string hh = string.Format("\"{0}\"", path);
    Process.Start(@"C:\Program Files (x86)\VideoLAN\VLC\vlc.exe ", hh + " ,--play");

Der wahre Wert von hh bestanden wird. "H: \ Filme \ Battel SHIP \ done-Schlachtschiff-cd1.avi"

Wenn double double Literale benötigen verwenden: @ "H: \ Filme \ Battel SHIP \ done-Schlachtschiff-cd1.avi"; Statt: @ "H: \ MOVIESBattel SHIP \ done-Battleship-cd1.avi"; Da die ersten Literalen sind für die Pfadnamen und dann die zweite Literale ist für die doppelten Anführungszeichen

Sie können auch die doppelten Anführungszeichen in einfache Anführungszeichen.

string str = '"' + "How to add doublequotes" + '"';

Sie könnten &quot; anstelle von ". Es wird richtig vom Browser angezeigt werden.

Mit String Interpolation mit Arbeitsbeispiel :

var title = "Title between quotes";
var string1 = $@"<div>""{title}""</div>";  //Note the order of the $@
Console.WriteLine (string1);

Output

<div>"Title between quotes"</div>

Sie können $ verwenden.

Interpolated Strings : Wird verwendet, um Konstrukt Saiten. Ein interpoliert String sieht aus wie eine Vorlage Zeichenfolge, die interpolierten Ausdrücke enthält. Eine interpolierte String zurückgibt eine Zeichenfolge, die die interpolierten Ausdrücke ersetzt, dass sie mit ihren String-Darstellungen enthalten. Diese Funktion ist in C # 6 und neueren Versionen.

string commentor = $"<span class=\"fa fa-plus\" aria-hidden=\"true\"> {variable}</span>";

Verwenden Sie entweder

&dquo;
<div>&dquo;"+ title +@"&dquo;</div>

oder die doppelten Anführungszeichen entkommen:

\"
<div>\""+ title +@"\"</div>
string doubleQuotedPath = string.Format(@"""{0}""",path);

Setzen Sie einen Backslash (\) vor den doppelten Anführungszeichen. Das sollte funktionieren.

In C # können Sie:

 string1 = @"Your ""Text"" Here";
 string2 = "Your \"Text\" Here";

in C #, wenn wir verwenden „\“ bedeutet, dass Symbol finden Sie nicht c # inbuild Symbol, das durch Entwickler anzeigt verwenden. so in String benötigen wir doppelte Anführungszeichen bedeuten, dass wir Symbol „\“ vor doppelten Anführungszeichen setzen. string s = "\"Hi\""

"<i class=\"fa fa-check-circle\"></i>" mit ternärem Operator mit Eval() Datenbindung verwendet:

Text = '<%# Eval("bqtStatus").ToString()=="Verified" ? 
       Convert.ToString("<i class=\"fa fa-check-circle\"></i>") : 
       Convert.ToString("<i class=\"fa fa-info-circle\"></i>"

Ein indirekte, aber einfache Alternative zu verstehen Anführungszeichen am Anfang und Ende der Zeichenfolge hinzuzufügen -

char quote = '"';

string modifiedString = quote + "Original String" + quote;

Wenn Sie doppelte Anführungszeichen in HTML

hinzufügen möchten
echo "<p>Congratulations,  &#8220; ". $variable ." &#8221;!</p>";
output -> Congratulations, "Mr Jonh "!

Wenn Sie doppelte Anführungszeichen in einen String hinzufügen möchten, die auch dynamische Werte enthält. Für die gleichen anstelle von CodeId [i] und Codenamen [i] können Sie Ihre dynamischen Werte setzen.

data = "Test ID=" + "\"" + CodeId[i] + "\"" + " Name=" + "\"" + CodeName[i] + "\"" + " Type=\"Test\";
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top