我正在通過word文檔搜索標題和自動編號並將它們分配給元組。在MS Word中搜索標題
(Heading Style, 1.1, text)
當前我正在使用for循環來傳遞文檔中的每個段落對象並搜索它。
for x in xrange(1, doc.Paragraphs.Count+1):#for loop to print through paragraphs
oText = doc.Paragraphs(x)
if not oText.Range.Tables.Count >0 :
results = re.match('(?P<number>(([1-3]*[A-D]*[0-9]*)(.[1-3]*[0-9])+))', oText.Range.Text)
stylematch = re.match('Heading (?P<i>\d)', oText.Style.NameLocal)
if results!= None and oText.Style != None and stylematch != None:
doccat.append((oText.Style.NameLocal, oText.Range.Text[:len(results.group('number'))],oText.Range.Text[len(results.group('number')):]))
style = oText.Style.NameLocal
是否有更有效的方法來搜索標題而不是調用和檢查Word文檔中的每個段落對象?
編輯:
我還要提到我用這:
doc.ConvertNumbersToText()
的自動編號轉換成段落文本搜索的東西。
第二個編輯:
我不是找表的內容,但我希望能夠作爲一個選項。我只是在尋找標題1,2,3,4,5,6 ...等等。
它比這更糟,因爲你還應該尋找基於標題樣式的樣式。另外,你關心大綱級別嗎? – JasonPlutext