2017-02-13 27 views
0

我們怎樣才能從谷歌文檔中刪除真的空段落? 此代碼將刪除包含圖像的任何段落,人力資源的等無法瞭解如何檢查,如果一個段落確實是空的? getText()editAsText()什麼都不給予了這一點。谷歌文檔應用腳本 - 如何刪除真的空段落

var doc = DocumentApp.getActiveDocument(); 
var body = doc.getBody(); 
var docParagraphs = doc.getBody().getParagraphs(); 

for (var i = 0; i < docParagraphs.length; i++) { 
    if (docParagraph[i].getText() === '') { 
     docParagraphs[i].removeFromParent(); 
    } 
} 

我知道有相關的話題〜類似的問題,但不一樣。 How to find and remove blank paragraphs in a Google Document with Google Apps Script?

UPD:正確答案:

var doc = DocumentApp.getActiveDocument(); 
var body = doc.getBody(); 

for (var i = 0; i < doc.getBody().getParagraphs().length; i++) { 
    if (docParagraph[i].getText() === '') { 
    if (docParagraph_i.getNumChildren() == 0 && i < (docParagraphs.length - 1)) { 
     docParagraph[i].removeFromParent(); 
    } 
    } 
} 

我已經改變了表達過通過電流元件,以限制我算,而不是存儲在變量。因爲元素被刪除(或者在其他實現中被添加,例如),當沒有段落但循環會想要得到它們時會出錯。

&& i < (...) 

因爲最後一段無法刪除並引發錯誤。

回答

0

你會想在之前的段落

paragraph.getNumChildren() //returns the number of children

+0

我試過.getNumChildren()來檢查的孩子,我想.getChild()。以前,沒有運氣幾次的getType(),但你的回答告訴我再重新檢查。我做了一個暫停,詢問的問題後,現在有清醒的頭腦中,我用.getNumChildren()不段,但爲它的第一個可能的子女(由.getChild())和沒的理解,爲什麼它甚至在拋出一個錯誤。 getChild()。第一個這樣的段落真的是空白的... Thanx! – Bowman

相關問題