正規表現でルビを小書きに変換したいです。
ルビとは漢字の傍に小さいフォントの仮名で
ふりがなを振ったものです。
小書きとは っ・ゃ・ゅ・ょ など
ちいさな文字です。
また青空文庫形式では
ルビは《と》で囲んで、
たとえば
会社《かいしゃ》
のように表記します
現代では、ルビでも小書きを使って
会社《かいしゃ》 としますが
昔は校正の方針が違って
ルビには小書きを使わなかったので
会社《かいしや》などと表記されます。
なので、小書きでないルビの作品を
正規表現で
一度に小書きに変換したいと考えてます。
とはいえ、正規表現だけで完璧に変換するのは
難しいと思うので、変換間違いがあっても
大丈夫です。*のちほど目視で確認&訂正するので
なので
下記の条件くらいの変換をしたいです
----
1.変換範囲は
《と》の、平仮名を変換
2.変換は
つ・や・ゆ・よ
→
っ・ゃ・ゅ・ょ
3.対象文字が先頭,つまり《の直後
にあった場合は変換しない
例:
妙《みよう》 →妙《みょう》
立派《りつぱ》→立派《りっぱ》
愉快《ゆかい》 →先頭なので変換なし
辰巳《たつみ》→辰巳《たっみ》 *誤変換だが目視訂正するので大丈夫
----
不十分な説明や分かりにくい箇所もあるかと思いますが
後ほど、追記させていただきます。
どうぞ、よろしくお願いします。
No.2ベストアンサー
- 回答日時:
すべてのパターンに対応するのは難しいですが。
例えばこちら↓のようなものにするとか。
(《[あ-わ]*?[あ-わ].??)●(.*?》)
●の部分に「や」「ゆ」「よ」「つ」それぞれを個別に入れ、
\1〇\2
〇の部分に、対応する「ゃ」「ゅ」「ょ」「っ」を入れてから検索
しながら置換を繰り返すなどが、単純な方法だと思う。
上記で対応できないパターンもあると思いますが、一例として回答
しました。
秀丸で
下記の正規表現で置換したら目的どおりになりました
検索 : (《[あ-わ]*?[あ-わ].??)や(.*?》)
置換 : \1ゃ\2
検索 : (《[あ-わ]*?[あ-わ].??)ゆ(.*?》)
置換 : \1ゅ\2
検索 : (《[あ-わ]*?[あ-わ].??)よ(.*?》)
置換 : \1ょ\2
ありがとうございます。
該当の文字、1文字の変換ですので
徐々《じよじよ》→徐々《じょじよ》となりますが
対象が少ないですし、
上記の置換をもう一度、繰り返すことで
解決したので、大丈夫です。
本当に助かりました。
目的通りでしたのでベストアンサーとさせていただきます。
No.1
- 回答日時:
余りにも情報が少なすぎます。
OSはなんでしょうか。
言語は何でしょうか。
入力データテキストファイルでしょうか。
入力データがテキストファイルと仮定すると、1行に1つの単語があるという前提で良いのですか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) Microsoft IME 一発で変換できない言葉がある 3 2022/07/19 19:29
- その他(プログラミング・Web制作) 変換のプログラムを教えてください。 6 2023/07/01 09:57
- 財務・会計・経理 業者間での注文書・請書の取り扱いについて 2 2022/06/27 15:53
- 会社・職場 エレメント交換について 人によって基準が異なるので困っています。 7 2022/04/21 16:32
- Word(ワード) 片仮名のルビ 1 2023/08/25 11:27
- フリーソフト フォルダ、ファイル名の一括変換について 3 2023/03/16 09:23
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- その他(ビジネス・キャリア) 人の文章を書き換えることは著作権法違反にあたりますか? 2 2022/06/19 21:47
- Excel(エクセル) Excelで校閲をする方法はあるでしょうか(取扱説明書への掲載禁止用語の確認) 3 2022/06/11 22:51
- 日本語 なぜ「壊石料理」と記述するのでしょうか? 26 2023/06/17 13:01
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
GetDlgItemInt( ) c++
-
Excel-VBAのmsgBox()の不思議
-
isoをimgに変換したいのですが...
-
【EXCEL】カナ、ひらがなを英字...
-
緯度、経度の 10進法と 60進法...
-
線対称の角度を求める
-
CIDコードからUNICODEへの変換...
-
Linux Mint でShift-JISが使い...
-
基本情報 過去問16年 問4に...
-
FortranをC++(VC++)へ変換
-
tex 郵便記号のだしかた
-
VBAを使って二進法計算
-
VB6からVB2010への変換
-
半角カナ文字と特殊文字の変換
-
英数文字列のうちの数値を4桁に...
-
H8/3664FのAD変換について
-
機械語とアセンブリ言語の違い...
-
PIC AD変換
-
DOSコマンドでの文字コード変換...
-
n次元の正規直交基底ベクトルの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
緯度、経度の 10進法と 60進法...
-
Excel-VBAのmsgBox()の不思議
-
Mac 乗数の入力方法
-
家電製品の電力周波数を変える機械
-
3のつく数字と3の倍数のみを表...
-
bmp→jpgに、jpg→bmpに
-
10進数をBCDに変換する方法
-
【EXCEL】カナ、ひらがなを英字...
-
StrConvの使い方について教えて...
-
分を時間に変換するプログラム
-
画像ファイル変換(Tiff→PDF)
-
マンセル⇔XYZ,RGB変換式或いは...
-
C/C++→JAVAに変換するツール
-
VB6からVB2010への変換について
-
c++でmatからvectorへの変換の...
-
DOSコマンドでの文字コード変換...
-
VB.NETをJavaに変換するツール...
-
SJIS⇔UTF-8の文字コード...
-
なぜ通信には16進数文字列が使...
-
C#でのpngからbmpへの変換について
おすすめ情報
環境を追記します。
Mac およびWindowsで
正規表現が使えるエディタを利用できます。
MacならCotEditor
Winなら秀丸エディタです。