面倒なのは、タイトルとかフリガナとか縦中横とかの書式設定を独自のタグで埋めていかなければならないって点ですが、半日頑張ったらなんとかなる。推敲ついでにやれるので、まあそんなに手間とは感じない。
なろうのルビは見た感じ青空文庫と同じような感じである。
なので正規表現を用いて。
HTMLからEPUBへの変換を試してみる - KDPのメモ 急急如律令
で書いた
|水面《みなも》→{水面|みなも}
に変換する。
検索する文字列
|?([\p{Han}]+)《(.+?)》
置換後の文字列
{\1|\2}
が使えるかなと思っている。
縦中横は、半角数字と半角英数でいいとして、単語境界を用いて
\b(\d{1,2})\b
置換後の文字列
^\1^
半角英数字
[a-zA-Z0-9]{1,3}
{1,3}は半角英数字が1桁から3桁までという意味を表す{2}というようにすれば2桁もできる。
\bは単語境界を意味していて、単順に二桁を指定すると三桁の中の二桁も選択してしまうので排除するためにつけている。
参考:
正規表現とは