Qiitaでは数式が書けるのですが、インライン数式モードが意図しないところで発動しておかしな表示になってしまうことがあります。
Perlの正規表現の一行モード(/s)と複数行モード(/m)の覚え方 - Qiita より。
複数行モードで ^ や $ は文字列の冒頭末尾以外にも、改行の前後にもマッチするようになりました。「複数行モード」で以前の ^ や $ の意味を表したい場合に使われるのが \A \Z そして \z です。
一行に $
が一つであれば大丈夫なようですが、二つ以上あると、その間がインライン数式モードになってしまいます。この場合、^
が上付き文字として解釈されてしまい、表示がおかしくなります。
これをエスケープする場合は、単純にバックスラッシュ \
を使えば良いようです。
複数行モードで ^ や \$ は文字列の冒頭末尾以外にも、改行の前後にもマッチするようになりました。「複数行モード」で以前の ^ や \$ の意味を表したい場合に使われるのが \A \Z そして \z です。
$
はエスケープ対象となり、バックスラッシュが無くなり、インライン数式モードの開始・終了といった意味を $
は失います。また、特殊な意味を持たないアルファベットなどの前のバックスラッシュは、特に何もせず通常のバックスラッシュ文字として表示されます。
Qiitaの数式の仕組みは、たぶんMathJaxを使って実現していると思うので、細かい挙動などを知りたい場合はその辺りを調べてみるとよさそうです。