如何使用AppleScript枚举文章的段落?

时间:2017-07-02 16:39:50

标签: loops applescript

我一个月来拼命寻找解决方案,请帮助我。

以下是我试图修改的文章示例:

“这是介绍。

这是某些文字的第1段。

这是某些文字的第2段。

这是某些文字的第3段。

这是某些文字的第4段。

这是某些文字的第5段。

这是outro“

我要做的是列举文章的每一段,以便文章看起来像这样:

“这是介绍。

  1. 这是某些文字的第1段。

  2. 这是某些文字的第2段。

  3. 这是某些文字的第3段。

  4. 这是某些文字的第4段。

  5. 这是某些文字的第5段。

  6. 这是outro“。

    有可能吗?

1 个答案:

答案 0 :(得分:0)

简单的解决方案,它会跳过第一个和最后一个段落,并将序号添加到索引号为1的其他段落中。

结果收集在一个列表中,最后加入text item delimiters

set theText to "This is introduction.

This is paragraph 1 of some text.

This is paragraph 2 of some text.

This is paragraph 3 of some text.

This is paragraph 4 of some text.

This is paragraph 5 of some text.

This is outro"

set paragraphsOfText to paragraphs of theText
set paragraphList to {first item of paragraphsOfText, ""}
set counter to 1

repeat with i from 2 to ((count paragraphsOfText) - 1)
    set currentItem to item i of paragraphsOfText
    if length of currentItem is not 0 then
        set end of paragraphList to (counter as text) & ". " & currentItem
        set counter to counter + 1
    end if
end repeat
set end of paragraphList to ""
set end of paragraphList to last item of paragraphsOfText

set {TID, text item delimiters} to {text item delimiters, return}
set theResult to paragraphList as text
set text item delimiters to TID

display dialog theResult