Koronkorko是芬兰的复利一词。我们不希望对字符串产生复合兴趣,因此让我们找到最短的正则表达式以排除它。
给定仅由大写字母字符AZ组成的字符串,如果不包含substring,则确定与该字符串匹配的最短正则表达式KORONKORKO。包含KORONKORKO为子字符串的任何字符串都不应与正则表达式匹配。
只有字符A- ,Z,[,],-,^,,?,*,+,|,(并)应在表达式中使用。
我认为可以使用表达式中的118个字符来完成此操作。你能把它缩短吗?
注意:此挑战来自Ohjelmointiputka(芬兰语)。
@MamaFunRoll我认为这就是为什么
—
Alex A.
!不允许这样做。
我很乐于尝试在芬兰站点上工作,并且我相信您所寻找的是理论上的正则表达式,该表达式匹配/拒绝输入字符串。例如,该站点似乎仅允许使用
—
Sp3000,2013年
-and ^内部字符类(因此^不能用作锚点),并且仅当整个字符串与regex匹配时(即,隐式周围^$,如反对正常的“正则表达式”,后者会将字符串视为匹配的正则表达式,如果该字符串的任何部分均与正则表达式匹配)
因此,我删除了PCRE答案,尽管它甚至在PHP中也可以使用,但在这种情况下几乎绝对是意料之外的。
—
Sp3000 '16
我忘了说,该站点通过PHP的ereg函数检查表达式是否有效。有人在ohjelmointiputka.net/keskustelu/…
—
访客
!是允许的字符,则可以完成^((?!KORONKORO).)*$19个字节。