用c#代替大的HTML代码

本文关键字:HTML 代码 | 更新日期: 2023-09-27 18:18:18

我有一个应用程序,可以得到传入的喊叫声和发送喊叫声在一个网站的呼喊箱,在呼喊箱的HTML是用来显示给smiley:

<img src='"http:'/'/www.darkbox.nl'/board'/images'/smilies'/smile.gif'" alt='"Smile'" title='"Smile'" class='"smilie smilie_1'" '/>

这就是它在我的程序中显示的方式。我试着找到并替换HTML代码为':)'

                if(s.Message.Contains("< img src ='"http:'/'/www.darkbox.nl'/board'/images'/smilies'/smile.gif'" alt='"Smile'" title='"Smile'" class='"smilie smilie_1'" '/>"))
            {
                s.Message.Replace("<img src='"http:'/'/www.darkbox.nl'/board'/images'/smilies'/smile.gif'" alt='"Smile'" title='"Smile'" class='"smilie smilie_1'" '/>", ":)");
            }

只有这不起作用,我得到7个错误,所有'无法识别的转义序列'我也试过@"",但没有帮助。

用c#代替大的HTML代码

它抱怨的转义序列是'/ -你不需要转义/:

if(s.Message.Contains("< img src ='"http://www.darkbox.nl/board/images/smilies/smile.gif'" alt='"Smile'" title='"Smile'" class='"smilie smilie_1'" />"))
{
    s.Message.Replace("<img src='"http://www.darkbox.nl/board/images/smilies/smile.gif'" alt='"Smile'" title='"Smile'" class='"smilie smilie_1'" />", ":)");
}

但是当我们在它的时候,没有必要先检查Contains -如果它不在那里,它不会被替换,不妨不检查就调用.Replace:

s.Message.Replace("<img src='"http://www.darkbox.nl/board/images/smilies/smile.gif'" alt='"Smile'" title='"Smile'" class='"smilie smilie_1'" />", ":)");

然而,你也应该注意到Replace不会修改原始字符串,你还需要将它分配给一些东西,可能是s.Message,尽管它完全取决于你的代码中发生的其他事情:

s.Message = s.Message.Replace("<img src='"http://www.darkbox.nl/board/images/smilies/smile.gif'" alt='"Smile'" title='"Smile'" class='"smilie smilie_1'" />", ":)");

根本不需要转义字符。像这样使用正斜杠:

http://www.darkbox.nl/board/images/smilies... 

只有反斜杠需要转义

相关文章: