Koronkorko est le mot finlandais pour les intérêts composés . Nous ne voulons pas d'intérêt composé dans nos chaînes, alors trouvons l'expression régulière la plus courte possible pour l'exclure.
Étant donné une chaîne composée uniquement des caractères alphabétiques majuscules AZ, déterminez l'expression régulière la plus courte possible qui correspond à la chaîne si elle ne contient pas la sous-chaîne KORONKORKO
. Toute chaîne qui contient KORONKORKO
comme sous-chaîne ne doit pas être mise en correspondance par l'expression régulière.
Seuls les caractères A
- Z
, [
, ]
, -
, ^
, ,
?
, *
, +
, |
, (
et )
doivent être utilisés dans l'expression.
Je pense que cela peut être fait avec 118 caractères dans l'expression. Pouvez-vous le raccourcir?
Remarque: Ce défi vient d' Ohjelmointiputka (en finnois).
!
n'est pas permis.
-
et à l' ^
intérieur de celles-ci (il ^
ne peut donc pas être utilisé comme ancre), et une correspondance n'est comptée que si toute la chaîne est mise en correspondance par l'expression régulière (c'est-à-dire un entourage implicite ^$
, comme par opposition aux "regexes" normales qui comptent une chaîne comme correspondant si une partie de celle-ci correspond à l'expression
!
c'était un caractère autorisé, vous auriez pu le faire^((?!KORONKORO).)*$
pour 19 octets.