我从.html文件中提取了一些信息并将其放入文本文件中。 信息就在那里,但有一段时间我会有这样的事情出现:
info, info...
info, info...
<div class="ratings-link"> <img alt="arrows" class="icon" src= bla bla...</a></div>"
info, info...
info, info...
我想要做的基本上是删除所有不是信息的东西。 (摆脱:
<div class="ratings-link" ....bla bla... </a></div>
一起。
实现这一目标的最佳方式/工具是什么?我用scanf写了一个C程序但是它 不会工作,因为并非所有这些div都有相同的结束字符串。但他们都有分享 同样提到的模式。
答案 0 :(得分:1)
如果这是我,我会用PHP或Python编写一个快速脚本来执行此操作。
PHP有strip_tags函数: http://www.php.net//manual/en/function.strip-tags.php
Python有一个名为beautiful soup的库,它非常成熟,非常适合这种事情: http://www.crummy.com/software/BeautifulSoup/
或者任何支持正则表达式支持删除所有匹配项的语言&lt; [^&gt;] *&gt;
答案 1 :(得分:0)
您可以在几乎所有编程语言中使用RegEx来过滤文本并删除不需要的信息。
在您的情况下,相关的正则表达式将是:<[^>]*>
这是c#中的一个例子:
using System;
using System.Text.RegularExpressions;
public class Program
{
static string myString = "info, info..." +
Environment.NewLine + "info, info..." +
Environment.NewLine + "<div class='ratings-link'> <img alt='arrows' class='icon' src= bla bla...</a></div>" +
Environment.NewLine + "info, info..." +
Environment.NewLine + "info, info...";
public static void Main()
{
String result = Regex.Replace(myString, @"<[^>]*>", String.Empty);
Console.WriteLine(result);
}
}
的 Live Example 强>
答案 2 :(得分:0)
您实际上要做的是从文本中删除任何html标记。偶尔通过复制和粘贴剥离标签的最简单方法是使用http://www.striphtml.com/之类的在线工具,或者更方便http://www.zubrag.com/tools/html-tags-stripper.php,它提供了输入要删除的URL的替代方法(使提取文本首先过时) )并允许您选择可能要排除的标签。
如果我误解了你,并且你打算写一些html脱衣舞程序,那么,我所知道的每种语言/平台都有功能,那就完全可以实现。 PHP f.e.具有strip_tags()
功能。