19/12/13 21:51:25.19 M1n71JyZ0.net
>>38
コードは長すぎて多分アップできないと思う。
やっていることは switch 式を2 文字マッチの場合と 1 文字マッチの場合で 2 種類つくり、残文字列が 2 文字以上あるなら前者にかける (破棄パターン _ => で後者を呼び出す)、1文字なら後者にかけ、インデックスを進めるだけ。
置換後文字列の連結には StringBuilder 使っているし、メソッド呼び出しは AggressiveInlining している。ユーザー定義関数を意図的に遅くするようなことはしていない。
1文字あるいは2文字の切り出しに Substring 使っているけど、それが遅いのかな?