第4話……ピクシブ形式 から青空文庫形式 (`|漢字《かんじ》`) への変換
前書き
僕は、ノベルアップ+さんからピクシブさんやエブリスタさんへ小説を幾つか移動させました。当然早い、遅いがあるので、ピクシブ形式↔青空文庫形式の両方が必要になります。ピクシブさんは独自のルビの振り方を持っています。これはアメブロさんと同じですね。
今回は、ピクシブ形式から青空文庫形式への移行の方法を説明します。
青空文庫形式
https://kakuyomu.jp/users/happy-isl/news/16818622173406862943
ピクシブ形式
[[rb:柴風 > チャイ・フェン]]
から
青空文庫形式
https://kakuyomu.jp/users/happy-isl/news/16818622173406862943
への変換を行うには、以下の正規表現を使用することで簡単に実現できます。
★1. 変換のための正規表現と置換パターン
■正規表現パターン
\[\[rb:([^\x00-\x7F >]+?) ?\> ?([^\]]+)\]\]
■置換パターン
https://kakuyomu.jp/users/happy-isl/news/16818622173738882454
★ピクシブ形式から青空文庫形式への正規表現を一度で成功させた方法を詳細に説明します。
1️⃣正規表現と置換パターン
■検索式(正規表現)
\[\[rb:([^\x00-\x7F >]+?) ?\> ?([^\]]+)\]\]
■置換式
https://kakuyomu.jp/users/happy-isl/news/16818622173738882454
2️⃣具体的な説明
1. 正規表現の詳細
- `\[\[rb:`
開始部分 `[[rb:` を正確にマッチさせます。角括弧 `[` と `]` は正規表現では特殊文字なので、エスケープ記号 `\` を付けて指定します。
- `([^\x00-\x7F >]+?)`
「漢字」部分をキャプチャします。`[^\x00-\x7F >]` は日本語の漢字の範囲を示し、`+` で1文字以上の繰り返しを指定しています。
- ` ?\>?`
区切り文字 `>` の前後にあるかもしれないスペースを柔軟に対応するため、`?` を使って0回または1回のスペースを許可しています。
- `([^\]]+)`
「かんじ」部分(ルビ部分)をキャプチャします。`[^]]` は「閉じ角括弧 `]` 以外の任意の文字列」を意味します。
- `\]\]`
終了部分 `]]` を正確にマッチさせます。
2. 置換式の詳細
https://kakuyomu.jp/users/happy-isl/news/16818622173738882454
- `$1` は1番目のキャプチャ(漢字部分)。
- `$2` は2番目のキャプチャ(ルビ部分)。
- これを青空文庫形式
https://kakuyomu.jp/users/happy-isl/news/16818622173406862943
の形に整形します。
★3. 実例
■入力
[[rb:梁 > はり]]
[[rb:柱 > はしら]]
■出力
https://kakuyomu.jp/users/happy-isl/news/16818622173739153796
★4. 手順
1. 正規表現対応エディタを使用
- Visual Studio Code、Notepad++、WZエディターなどで「正規表現モード」を有効にします。
2. 正規表現を入力
- 「検索式」に正規表現を入力。
- 「置換式」に青空文庫形式を入力。
3. 全置換を実行
- テキスト全体を対象に置換を実行。
★5. ポイント
この方法では、`>` の前後に余計なスペースがあっても問題なく対応でき、青空文庫形式に正確に変換できます。
もし他に類似の変換が必要な場合も、この形式を基に柔軟に対応できます!
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます