Acho que a resposta é que
e na maioria dos casos está localizado no início das strings escaneadas e na primeira string pesquisada, permitindo um curto-circuito nas condições OR, enquanto corresponde a k acontecer nas últimas condições e em algum lugar no final da string. E como há significativamente menos linhas com k , mais strings devem ser verificadas completamente sem nenhuma correspondência.