Der übliche Verdächtige für die Verarbeitung von Text in AppleScript ist die integrierte globale Eigenschaft text item delimiters
. Sie können damit sowohl eine einzelne Zeichenfolge in mehrere Teile aufteilen (bei Verwendung des text items … of
Referenzformulars), Bereichsendpunkte auswählen (bei Verwendung text item N
in der text … of
Referenzform) und mehrere Teile zu einer einzigen Zeichenfolge verbinden (wenn eine Liste in eine Zeichenfolge umgewandelt wird). .
to pickText(str, startAfter, stopBefore) set pickedText to {} set minLength to (length of startAfter) + (length of stopBefore) repeat while length of str is greater than or equal to minLength -- look for the start marker set text item delimiters to startAfter -- finish if it is not there if (count of text items of str) is less than 2 then exit repeat -- drop everything through the end of the first start marker set str to text from text item 2 to end of str -- look for the end marker set text item delimiters to stopBefore -- finish if it is not there if (count of text items of str) is less than 2 then exit repeat -- save the text up to the end marker set end of pickedText to text item 1 of str -- try again with what is left after the first end marker set str to text from text item 2 to end of str end repeat set text item delimiters to " " pickedText as string end pickText -- process some “hard coded” text set s to "I love eating apples. I love eating cherries. I love eating grapes, pecans, and peaches." pickText(s, "I love eating ", ".") --> "apples cherries grapes, pecans, and peaches" -- process text from a file set s to read file ((path to desktop folder as string) & "Untitled.txt") pickText(s, "I love eating ", ".")