【发布时间】:2016-09-01 04:59:04
【问题描述】:
我是一名新的 C# 程序员。我正在尝试制作一个简单的 c# 应用程序,如果它们是这种格式,它将从 pdf 文件(书)中提取标题:
1.1 电气/电子行业
1.2 简史
1.3 计量单位
我正在使用代码:
string pattern = @"(\d+)(\.)(\d+) ([A-Z]+).([A-Z]+).([A-Z]+).([A-Z]+).([A-Z]+)";
Regex.match(strText,pattern);
适用于单行标题,但不适用于两行/多行标题。 有人可以帮忙吗?
【问题讨论】:
-
你说的是目录还是什么?如果您将本书的整个文本视为单个字符串并运行一次正则表达式,您将永远无法使用正则表达式。你会发现很多误报,也可能会漏掉一些。
-
那个正则表达式没有做你认为它正在做的事情。例如,它将匹配行
XYZ1.2 A BRIEF HISTORY,而不匹配行2.4 SUMMARY。我建议你找到一些关于正则表达式的教程(但不要在这里要求一个,因为这显然是题外话)。 -
是的,我说的是本书的全文。我选择它是因为它的格式很好。似乎有效,但是有一些我认为可以解决的小问题,@SledgeHammer
-
是的,我是 C# 新手。我觉得我应该多学习。谢谢 :) @AdrianHHH