web-dev-qa-db-ja.com

変数内の文字列に二重引用符を追加する方法

私は変数があります:

string title = string.empty;

私が必要なのは、どんな文字列が渡されるにしても、二重引用符で囲んでdivの中に内容を表示する必要があるということです。だから私は以下のように書いた。

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

しかし、ここに二重引用符を追加する方法?それでそれは以下のように表示されるでしょう:

"How to add double quotes"
140
ANP

あなたはそれらを2倍にすることによってそれらをエスケープする必要があります(逐語的な文字列リテラル):

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

あるいは通常の文字列リテラルでは\でそれらをエスケープします。

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

それで、あなたは本質的に二重引用符を文字列変数の中に格納する方法を尋ねていますか?そのための2つの解決策:

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

何が起こるかをもう少し明確にするために、

var string1 = @"before ""inside"" after";
var string2 = "before \"inside\" after";
44
Fredrik Mörk

私があなたの質問を正しく理解しているならば、多分あなたはこれを試すことができます:

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

これを頻繁に行わなければならず、コード内でこれをよりクリーンにしたい場合は、このための拡張メソッドを使用することをお勧めします。

これは本当に明白なコードですが、それでも時間を節約して節約するのに役立つことがあると私は思います。

  /// <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 + "\"";
    }

それからあなたはあなたが好きなすべての文字列で、foo.AddDoubleQuotes()または "foo" .AddDoubleQuotes()を呼び出すことができます。

この助けを願っています。

11
codea

もう一つの注意:

    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");

渡されたhhの実際の値は "H:\ MOVIES\Battel SHIP\done-battleship-cd1.avi"になります。

ダブルダブルリテラルが必要なときは、次のものを使用します。@ "H:\ MOVIES\Battel SHIP\done-battleship-cd1.avi";代わりに:@ "H:\ MOVIESBattel SHIP\done-battleship-cd1.avi";最初のリテラルはパス名用であり、2番目のリテラルは二重引用符用です。

5
DR.

二重引用符を一重引用符に含めることもできます。

string str = '"' + "How to add doublequotes" + '"';
4
Yannick Turbang

文字列補間実用例 を組み合わせて使用​​します。

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

出力

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

&quot;の代わりに"を使用することができます。ブラウザによって正しく表示されます。

2
Jens

$を使うことができます。

補間文字列 :文字列を構成するために使用されます。補間された文字列は、補間された式を含むテンプレート文字列のように見えます。補間文字列は、それに含まれる補間表現をそれらの文字列表現で置き換えた文字列を返します。この機能はC#6以降のバージョンで利用可能です。

string commentor = $"<span class=\"fa fa-plus\" aria-hidden=\"true\"> {variable}</span>";
2
Jahan
string doubleQuotedPath = string.Format(@"""{0}""",path);
1
Sunil Kumar

どちらかを使う

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

または二重引用符をエスケープする:

 <div>\"" + title + @ "" "</div> 
1
graham

動的な値も含む文字列に二重引用符を追加したい場合。 CodeId [i]とCodeName [i]の代わりに、動的な値を設定することもできます。

data = "Test ID=" + "\"" + CodeId[i] + "\"" + " Name=" + "\"" + CodeName[i] + "\"" + " Type=\"Test\";
0

HTMLに二重引用符を追加したい場合

echo "<p>Congratulations,  &#8220; ". $variable ." &#8221;!</p>";
output -> Congratulations, "Mr Jonh "!
0
Yogesh Sarvaiya

c#では、 "\"を使用することは、次のシンボルが開発者が使用するC#の組み込みシンボルではないことを意味します。そのため、文字列では二重引用符が必要です。つまり、二重引用符の前に "\"記号を付けることができます。 string s = "\"Hi\""

0
Malathi Mals

二重引用符の前に円記号(¥)を付けてください。それはうまくいくはずです。

0
Belinda

間接的ですが、文字列の最初と最後に引用符を追加する代わりのわかりやすい方法 -

char quote = '"';

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

C#ではあなたが使用することができます:

 string1 = @"Your ""Text"" Here";
 string2 = "Your \"Text\" Here";
0
Shivam Mishra

"<i class=\"fa fa-check-circle\"></i>"は、Eval()データバインディングを伴う三項演算子と共に使用されます。

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