如何从文本中删除字符数
本文关键字:删除 字符 文本 | 更新日期: 2023-09-27 18:32:30
当我从提要获取数据并通过我仍然拥有的正则表达式提取内容时(&o#8230; , &o#8211;, &o#8220, 等等...[我在前 2 个中添加了 o,以便它们重新格式化])在我的内容文本中。可悲的是,这些也在提要内容的来源中。我自己尝试过任何正则表达式但没有成功:&#[0-9]{4};
我的代码:
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
try
{
SyndicationItem sItem = IsolatedStorageSettings.ApplicationSettings["postovi"] as SyndicationItem; //stores the user chosed item to be displayed
List <string> CC_List = IsolatedStorageSettings.ApplicationSettings["ContentList"] as List<string>; //title and content are pulled from feed and put in list
PageTitle.Text = sItem.Title.Text;
PageTitle.FontSize = 40;
foreach (var item in CC_List)
{
int i;
if (item == PageTitle.Text)
{
i = CC_List.IndexOf(item, 0); //index naslova u listi
String content = CC_List[i + 1];
content = Regex.Replace(content, @"(?<startTag><'s*script[^>]*>)(?<content>['s'S]*?)(?<endTag><'s*/script[^>]*>)", string.Empty);
Match link = Regex.Match(content, @"(?<=<img's+[^>]*?src=(?<q>['""]))(?<url>.+?)(?='k<q>)", RegexOptions.Singleline);
content = Regex.Replace(content, @"(?></?'w+)(?>(?:[^>'""]+|'[^']*'|""[^""]*"")*)>", string.Empty);
content = Regex.Replace(content, " ", string.Empty);
Uri uri = new Uri(link.Value);
slika_clanak.Source = ImageFromUri(link.Value); // gets image
content = Regex.Replace(content, @"<p>.*</p>", string.Empty);
clanak_textblock.Text = content.Trim(); // reads article text and puts it on screen
}
}
你试过HttpUtility.HtmlDecode方法吗?这是包含在 System.Net 程序集中的标准,我不能确切地说它是否在WP7上也可用。
尽管我发表了评论,但我意识到第二个选项可能是 Html Agility Pack,它有一个 wp7.5 二进制文件。您可能会遇到 SO 上发布的问题,并在包含某些用于编译的库 http://htmlagilitypack.codeplex.com/discussions/282469 与这篇文章相呼应。我提到它的原因是有一个非常强大的HtmlEncode类,它构建了所有实体的字典。你可能无法直接使用 DeEntitize(),但如果需要,你可以研究它是如何构建一些东西来剥离所有东西的。
我个人不想手动计算正则表达式,我会使用为我构建的这样的东西,然后遍历我认为相关的所有内容。当然,这是手机,所以你最好根据具体情况进行剥离,但如果提要不断变化并且你没有足够的样本数据来构建,那就变得很困难了。