Yes, the pattern will repeat when the button is held down. I'm not clear how long any pattern takes, but if you release the button while it is running it should not run again.
If you want the pattern to run only once, even if you keep holding the button down you will have to reconfigure the button reading code to respond when the button has become pressed instead of when it is pressed. See the state change example of the ide.
You will have something like
if (digitalRead(BUTTON_PINS[i]) == 0 and lastdigitalRead(BUTTON_PINS[i]) ==1)