如何计算进入 webbrowser 控件 C# 的字符数?
How do I count number of characters into webbrowser control C#?
使用网络浏览器控件。我想统计进入webbrowser的字符数,就像Textbox
class的textchange一样。我只想计算显示 WebBrowser
没有 html,没有图像的文本中的字符数,etc.Any 关于如何模拟显示更改文本时触发的文本框行为的想法?谢谢
我正在用 C# 开发 Winforms。没有 ASP.NET.
添加以下内容class:
using System.Text.RegularExpressions;
命名空间CK.TicketSystem.Shared
{
public 静态 class HtmlUtils
{
public static bool IsHtmlFragment(字符串值)
{
return Regex.IsMatch(值, @"");
}
/// <summary>
/// Remove tags from a html string
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
public static string RemoveTags(string value)
{
if (value != null)
{
value = CleanHtmlComments(value);
value = CleanHtmlBehaviour(value);
value = Regex.Replace(value, @"</[^>]+?>", " ");
value = Regex.Replace(value, @"<[^>]+?>", "");
value = value.Trim();
}
return value;
}
/// <summary>
/// Clean script and styles html tags and content
/// </summary>
/// <returns></returns>
public static string CleanHtmlBehaviour(string value)
{
value = Regex.Replace(value, "(<style.+?</style>)|(<script.+?</script>)", "", RegexOptions.IgnoreCase | RegexOptions.Singleline);
return value;
}
/// <summary>
/// Replace the html commens (also html ifs of msword).
/// </summary>
public static string CleanHtmlComments(string value)
{
//Remove disallowed html tags.
value = Regex.Replace(value, "<!--.+?-->", "", RegexOptions.IgnoreCase | RegexOptions.Singleline);
return value;
}
/// <summary>
/// Adds rel=nofollow to html anchors
/// </summary>
public static string HtmlLinkAddNoFollow(string value)
{
return Regex.Replace(value, "<a[^>]+href=\"?'?(?!#[\w-]+)([^'\">]+)\"?'?[^>]*>(.*?)</a>", "<a href=\"\" rel=\"nofollow\" target=\"_blank\"></a>", RegexOptions.IgnoreCase | RegexOptions.Compiled);
}
}
}
我必须说我在一些非常好的开发人员的博客中找到了这个 class,但不幸的是我不记得我是在哪里找到它的。
然后你做:
var str = HtmlUtils.RemoveTags(yourHtmlString);
var numberOfCharacters = str.Length;
希望对您有所帮助
使用网络浏览器控件。我想统计进入webbrowser的字符数,就像Textbox
class的textchange一样。我只想计算显示 WebBrowser
没有 html,没有图像的文本中的字符数,etc.Any 关于如何模拟显示更改文本时触发的文本框行为的想法?谢谢
我正在用 C# 开发 Winforms。没有 ASP.NET.
添加以下内容class:
using System.Text.RegularExpressions;
命名空间CK.TicketSystem.Shared { public 静态 class HtmlUtils { public static bool IsHtmlFragment(字符串值) { return Regex.IsMatch(值, @""); }
/// <summary>
/// Remove tags from a html string
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
public static string RemoveTags(string value)
{
if (value != null)
{
value = CleanHtmlComments(value);
value = CleanHtmlBehaviour(value);
value = Regex.Replace(value, @"</[^>]+?>", " ");
value = Regex.Replace(value, @"<[^>]+?>", "");
value = value.Trim();
}
return value;
}
/// <summary>
/// Clean script and styles html tags and content
/// </summary>
/// <returns></returns>
public static string CleanHtmlBehaviour(string value)
{
value = Regex.Replace(value, "(<style.+?</style>)|(<script.+?</script>)", "", RegexOptions.IgnoreCase | RegexOptions.Singleline);
return value;
}
/// <summary>
/// Replace the html commens (also html ifs of msword).
/// </summary>
public static string CleanHtmlComments(string value)
{
//Remove disallowed html tags.
value = Regex.Replace(value, "<!--.+?-->", "", RegexOptions.IgnoreCase | RegexOptions.Singleline);
return value;
}
/// <summary>
/// Adds rel=nofollow to html anchors
/// </summary>
public static string HtmlLinkAddNoFollow(string value)
{
return Regex.Replace(value, "<a[^>]+href=\"?'?(?!#[\w-]+)([^'\">]+)\"?'?[^>]*>(.*?)</a>", "<a href=\"\" rel=\"nofollow\" target=\"_blank\"></a>", RegexOptions.IgnoreCase | RegexOptions.Compiled);
}
}
}
我必须说我在一些非常好的开发人员的博客中找到了这个 class,但不幸的是我不记得我是在哪里找到它的。
然后你做:
var str = HtmlUtils.RemoveTags(yourHtmlString);
var numberOfCharacters = str.Length;
希望对您有所帮助