提取特定标题下的文本或仅提取listItems



我需要提取特定标题下的文本。

word文档示例:

烘焙

Lorem ipsum悲哀坐amet,consectetuer adipiscing elit。Aenean commodo ligula>埃格特·多洛。埃涅阿斯纪马萨。Cum sociis纳托克·佩纳提布斯和马格尼斯分娩蒙特斯mus。Donec quam felis,

列表项

  1. 列表项
  2. 列出项目
  3. 列出项目

另一个标题

这是我不需要提取的文本

因此需要提取标题"afbakerning"下的文本。

如果有人知道如何只提取特定标题下的列表项作为字符串,那就更好了。

我建议您尝试在线搜索处理文本和字符串时的工作原理,有很多方法可以做到这一点。由于特别坚持你的确切需求,你实际上可以简单地搜索";后烘焙";并将一个变量设置为文本的最大长度(即Another的确切位置,或您希望它是什么(,然后搜索您找到X+"的任何实例;。列表项";(是X和int(,并将List项存储在适合您需要的变量中。有很多可能性,但由于问题中没有说明你的需求的具体用途或目的,这个答案和问题一样模棱两可。尽管如此,我还是建议您尝试一些技术,即使是字符串的Substring函数也会有所帮助。

在您的情况下,您可以使用DocumentVisitor从文档中提取内容。例如,请参阅以下代码:

Document doc = new Document(@"C:tempin.docx");
MyVisitor visitor = new MyVisitor();
doc.Accept(visitor);
private class MyVisitor : DocumentVisitor
{
public override VisitorAction VisitParagraphStart(Paragraph paragraph)
{
// Detect heading paragraph. Heading 1 style is used for demonstration purposes.
if (paragraph.ParagraphFormat.StyleIdentifier == StyleIdentifier.Heading1)
{
Console.WriteLine("Heading Started: {0}", paragraph.ToString(SaveFormat.Text).Trim());
}
// Detect list items.
if (paragraph.IsListItem)
{
Console.WriteLine("t{0}", paragraph.ToString(SaveFormat.Text).Trim());
}
return VisitorAction.Continue;
}
}

最新更新