You can not.
Regexes are code objects in Perl 6. So your question basically reads: "Can I change routines or methods after I write them?". And the answer is the same for traditional code objects and for regular expressions: no, write to them that you want them first.
However, you really don't need EVAL for your use case. When you use an array variable inside a regular expression, it is interpolated as a list of alternative branches, so you can simply write:
my @words = <Vater Garten Nagel>; my $search = /@words/;
The $search regular expression becomes a closure, so if you change @words you will also change the match of $search .
Another approach to this particular example would be to use a modifier :ignoremark , which makes a also match ä (although there are also many other forms, such as ā or ǎ .)
source share