@main[] ^windows-1251[] ...^oneOf[a;a,b,c]...
...^oneOf[a;ax,b,c]...
...^oneWord[Word]...
...^oneWord[wo rd]...
@oneOf[s;list][t] выдаёт строку, если строка она есть в списке(разделенном запятыми) $t[^list.lsplit[,]] ^try{ ^if(!^t.locate[piece;$s]){ ^throw[user;$s;unknown] } $result[$s] }{ ^if($exception.type eq "user"){ $exception.handled(1) $result['$s' not in list '$list'] } } @oneWord[s] ^try{ ^if(^s.match[\W]){ ^throw[user;$s;not word] } $result[$s] }{ ^if($exception.type eq "user"){ $exception.handled(1) $result['$s' not a word] } }