正規表現の覚え書き(分数の変換)

分数関係の変換

例えば「1/3」という表記を自分が作った分数のcssクラスに書き換える。

before
1/3

after
<span class=”frac”><span class=”si”>1</span><span class=”bo”>3</span></span>

afterの状態では可読性が悪すぎて分数以外の場所の修正もままならないので、afterの状態はプログラム内部でのみ扱うようにしたい。

いくつか読んだ記事の記憶を頼りに適当に書いてみるw

検索対象の指定は「(.?)/(.?)」で置き換えは「<span class=”frac”><span class=”si”>$1</span><span class=”bo”>$2</span></span>」

これだと2ケタの分数を変えられなかった(1ケタ部分でマッチしてしまう)。「?」は最短一致指定だった

数字の最長一致になるように、検索対象を「([0-9]+)/([0-9]+)」としてみたら、うまく行った。「[0-9]+」は「1文字以上の数字」という意味

タイトルとURLをコピーしました