我正在寫一個Java代碼使用正則表達式來解析從PDF文檔中提取的內容頁面。使用Regex解析內容頁面?
在正則表達式必須匹配的字符串中:一個數字(最多三個)後跟一個空格(或多個)後跟一個單詞(或許多[單詞:任何字符序列])。反之亦然:(單詞(s)空格(s)數字),它們都必須在字符串中。同時考慮領先空間並且不區分大小寫。
提取的內容頁可能是這個樣子:
董事職責8
公司治理9
薪酬報告10
的編號,樣式不一致,數字和字符串之間的空格數量會有所不同,因此它也可能如下所示:
項01內容
02戰略和亮點
04主席聲明
我使用匹配的任何數量的單詞後跟任意數量的空間,然後一個數字的正則表達式不超過3位:
(?i)([a-z\\s])*[0-9]{1,3}(?i)
它的工作原理但不是很好,不知道我做錯了什麼?我希望有一種方法可以檢測編號樣式(在頁面的左側或右側有頁碼),而不是重複正則表達式並翻轉順序。
乾杯
當你問一個正則表達式時最重要的事情是非常具體地說,文本將遵循的模式是什麼,並不總是可以從例子中得知 – aaronman
首先,「主席聲明」的例子包含一個'你在你的正則表達式中沒有考慮到的'。 –
@aaronman我在上面提到過: *正在使用的正則表達式匹配任意數量的單詞,後跟任意數量的空格,然後是不超過3個數字*的數字。但是也許我還不夠清楚,下次還是會確定下來。乾杯 – PhDeveloper