2

少なくとも部分文字列を適切に使用するにはどうすればよいですか?

'#fff'\">stringString 内のこの部分文字列の位置を見つけたいthis.style.backgroundColor='#fff'\">Choose a translation mode,

私はこれをやっています:

string substrToSearch = "'#fff'\\\">";
int substrPosition = stringString.IndexOf(substrToSearch);

残念ながら、substrPosition = -1 であり、機能していません。誰かが私を助けてくれますか?

解決済みの編集:

なぜこれができないのかよくわかりませんが、これstring quote = " " ";はできますquote = " \" "。実際、できることはわかっていますが..ここでは、「\」がエスケープ文字として使用されています。 m 検索はエスケープ文字として解釈されず、単純なテキストとして解釈されますか?

私にとってstring substrToSearch = "'#fff'\">";、、 substrToSearch は '#fff'"> as \"="です。

簡単に言うと、\"がエスケープ文字として解釈されないのはなぜですか?

4

3 に答える 3

1

これを試して:

string substrToSearch = "'#fff'\">";

アクセス時に stringString はカプセル化されません

于 2013-03-10T18:08:53.700 に答える
1

どうぞ...

    [TestMethod]
    public void StringIndex
    {
        var stringString = "this.style.backgroundColor='#fff'\">Choose a translation mode,:";
        var substrToSearch = "'#fff'\">";
        var substrPosition = stringString.IndexOf(substrToSearch);

    }
于 2013-03-10T18:10:13.700 に答える
1

追加された質問への答えは、文字列エスケープの概念の基本です。string quote = " " ";コンパイラは、文字列が 3 番目の引用符ではなく 2 番目の引用符で終わっていると見なすため、構文に問題があります。文字列のエスケープにより、実際の引用符を で表すことができる\"ため、 の実際の値" \" "では"なく\"です。

于 2013-03-10T18:26:20.620 に答える