我有一张桌子(Wijmo Grid)。 Log列需要一些文本。
允许用户在文本中写HTML
,因为邮寄时也会使用相同的文字,以使其看起来漂亮且风格很好。
让我们说文字是:
var text = "Hello friend <br> How are you? <h1> from me </h1>";
是否有任何方法或JSON.stringify()og HTML.enocde()我可以/应该用来获取:
var textWithoutHtml = magic(text); // "Hello friend How are you? from me"
其中一个问题是,如果文本包含"<br>"
,它会突破到下一行i表格的行,并且可以看到行中第二行的上半部分,女巫看起来不太好。
答案 0 :(得分:1)
var text = "Hello friend <br> How are you? <h1> from me </h1>";
var newText = text.replace(/(<([^>]+)>)/ig, "");
答案 1 :(得分:1)
您可以尝试这样:
string s = Regex.Replace("Hello friend <br> How are you? <h1> from me </h1>", @"<[^>]+>| ", "").Trim();
您还可以查看HTML Agility Pack
这是一个灵活的HTML解析器,可构建读/写DOM并支持 普通的XPATH或XSLT(你实际上并不需要理解XPATH或者 使用XSLT,不用担心......)。它是一个允许的.NET代码库 你解析“out of the web”HTML文件。解析器非常宽容 与“真实世界”格式错误的HTML。对象模型非常相似 什么提出System.Xml,但对于HTML文档(或流)。
<[^>]+>| /
1st Alternative: <[^>]+>
< matches the characters < literally
[^>]+ match a single character not present in the list below
Quantifier: Between one and unlimited times, as many times as possible, giving back as needed [greedy]
> a single character in the list > literally (case sensitive)
> matches the characters > literally
2nd Alternative:
matches the characters literally (case sensitive)
答案 2 :(得分:1)
据我了解你的问题,你可以用C#
编码这样的值string encodedValue= HttpUtility.HtmlEncode(txtInput.Text);
注意:此处txtInput是您网页上TextBox的ID。