Name

repeat with {loop variable} from {integer} to {integer}[by stepVal] end [repeat]

Syntax

Repeat with loopVar from 1 to 10
   (* code statements *)
end repeat

Description

This form of the repeat loop executes a specified number of times over a range of values. A loop variable keeps track of how far the repeat loop has progressed in cycling over its range of loops. The loop variable increments by the value of stepVal (or one by default if the stepVal variable is not specified) throughout each loop. This makes the repeat with statement much more flexible and powerful than repeat {integer} times. You can take the value of the loop variable and use it in the executing code, as in the following example. Once this repeat with statement reaches the end of its range, as in:

repeat with loopVar from 1 to 10

(10 is the end of the range here), then the repeat loop terminates and code execution resumes with the statement following end repeat. You can also use the exit statement to terminate this loop (see “exit”). repeat with is similar to the famous:

for (i=0; i < rangeVar; i++)

variation of the loop statement that JavaScript, Java, and C++ programmers are very familiar with.

Examples

This AppleScript loops through each character of a word to see if any character is repeated. It uses the loop variable to determine which character in the word to examine. This example also shows how you can specify any of the range values with expressions that return integers, instead of just literal integers:

repeat with ...

Get AppleScript in a Nutshell now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.