Repeat 繰り返し

 「Repeat(繰り返し)」には、次の6つがあります。
 無限ループ回数指定であるあいだ
 になるまでから〜までを〜のおのおのにして
日本語表現形式

 RepeatRepeat x timesRepeat while
 Repeat untilRepeat from A to BRepeat with x in...
英語表現形式


1. 無限ループ

 J--
  ここから [ 以下を繰り返す ]
    [ statement ]...
  以上

 E--
  repeat
    [ statement ]...
  end [ repeat ]

Examples

----------

 RepNumberを0にする
 ここから
   もしRepNumber>10ならば
     繰り返しを中止する
   そうでなければ
     RepNumberをRepNumber+1にする
   以上
 以上

 set RepNumber to 0
 repeat
   if RepNumber > 10 then
     exit repeat
   else
     set RepNumber to RepNumber+1
   end if
 end repeat


「繰り返し」の最初に戻る

2. 回数指定

 J--
  numberOfTimes回 [ 以下を繰り返す ]
    [ statement ]...
  以上

 E--
  repeat numberOfTimes [ times ]
    [ statement ]...
  end [ repeat ]

Examples

----------

 10回以下を繰り返す
   アプリケーション“Finder”についてアクティベート
   アプリケーション“スクリプティング対応エディタ”についてアクティベート
 以上

 repeat 10 times
   tell application "Finder" to activate
   tell application "スクリプティング対応エディタ" to activate
 end repeat


「繰り返し」の最初に戻る

3. 〜であるあいだ

 J--
  BooleanExpression [ である ] あいだ [ 以下を繰り返す ]
    [ statement ]...
  以上

 E--
  repeat while BooleanExpression
    [ statement ]...
  end [ repeat ]

Examples

----------

 RepNumberを0にする
 RepNumber<10であるあいだ以下を繰り返す
   RepNumberをRepNumber+1にする
   beep
 以上

 set RepNumber to 0
 repeat while RepNumber < 10
   set RepNumber to RepNumber +1
   beep
 end repeat

  ---これは10回繰り返すスクリプト。4.のExampleと比較してみて下さい。


「繰り返し」の最初に戻る

4. 〜になるまで

 J--
  BooleanExpressionになるまで [ 以下を繰り返す ]
    [ statement ]...
  以上

 E--
  repeat until BooleanExpression
    [ statement ]...
 end [ repeat ]

Examples

----------

 RepNumberを0にする
 RepNumber>=10になるまで以下を繰り返す
   RepNumberをRepNumber+1にする
   beep
 以上

 set RepNumber to 0
 repeat until RepNumber >= 10
   set RepNumber to RepNumber +1
   beep
 end repeat

  ---3.のExampleと同じく、10回繰り返すスクリプト。


「繰り返し」の最初に戻る

5. 〜から〜まで

 J--
  loopVariablestartValueからStopValueまで〜
         [ stepValueごとに ] [ 以下を繰り返す ]
    [ statement ]...
  以上

 E--
  repeat with loopVariable from startValue to StopValue [ by stepValue ]
    [ statement ]...
  end [ repeat ]

 loopVariableを減らしていくときはStopValueをマイナスの値に設定すればいいです。by -1 なら1ずつ減ることになります。
Examples

----------

 Buf を 0 にする
 iが1から100まで2ごとに以下を繰り返す
  Buf を Buf + i にする
 以上

 set Buf to 0
 repeat with i from 0 to 100 by 2
   set Buf to Buf + i
 end repeat


「繰り返し」の最初に戻る

6. 〜を〜のおのおのにして

 J--
  loopVariablelistのおのおのにして [ 以下を繰り返す ]
    [ statement ]...
  以上

 E--
  repeat with loopVariable in list
    [ statement ]...
  end repeat

註)
 この繰り返しは、loopVariableにリストの項目を順番に入れ、全部入れ終わった後繰り返しを終了します。これはしばしばリストの内容を連続して処理するために利用されます。
Examples

----------

 FolderPathを(フォルダを選ぶ)にする
 FileListを(FolderPathのフォルダリスト)にする
 aFileをFileListのおのおのにして以下を繰り返す
   aFileを表示する
 以上

 set FolderPath to ( choose Folder )
 set FileList to ( list folder FolderPath )
 repeat with aFile in FileList
   display dialog aFile
 end repeat

「繰り返し」の最初に戻る


制御文のページに戻る
AppleScriptのページに戻る
このホームページに関するお問い合わせは、karino@drycarbon.comまで。