「
濁点・半濁音の結合(1文字化)
」を編集中
2026年3月30日 (月) 18:52時点における
Kiyohiro
(
トーク
|
投稿記録
)
による版
(
→
概要
)
(
差分
)
← 古い版
|
最新版
(
差分
) |
新しい版 →
(
差分
)
ナビゲーションに移動
検索に移動
警告: このページの古い版を編集しています。
公開すると、この版以降になされた変更がすべて失われます。
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、さまざまなメリットもあります。
スパム攻撃防止用のチェックです。 決して、ここには、値の入力は
しない
でください!
== 概要 == 選択範囲、またはファイル全体の分離した濁点・半濁点を1文字に結合します 濁点(結合文字 U+3099, 独立文字 U+309B, 半角 U+FF9E) 半濁音(結合文字 U+309A, 独立文字 U+309C, 半角 U+FF9F) 例 「じ」U+3057 U+3099を「じ」U+3058に変換 注意 素人のAI作成です == 使い方 == Mery 3.8.3で動作確認 以下のソースコードをNormalizeDakuten.js など適当な名前で保存 QuickJSの場合 一行目に#language = “quickjs”を追加 == ソースコード == <syntaxhighlight lang="javascript" copy> #title="濁点・半濁音の結合(1文字化)" // 選択範囲、またはファイル全体の分離した濁点・半濁点を1文字に結合します var sel = document.selection; var isEmpty = sel.IsEmpty; // テキストが選択されていない場合はファイル全体を選択 if (isEmpty) { sel.SelectAll(); } var text = sel.Text; if (text !== "") { // 半濁音の変換辞書 var handakuMap = { "は":"ぱ", "ひ":"ぴ", "ふ":"ぷ", "へ":"ぺ", "ほ":"ぽ", "ハ":"パ", "ヒ":"ピ", "フ":"プ", "ヘ":"ペ", "ホ":"ポ" }; // 濁音の変換辞書 var dakuMap = { "か":"が", "き":"ぎ", "く":"ぐ", "け":"げ", "こ":"ご", "さ":"ざ", "し":"じ", "す":"ず", "せ":"ぜ", "そ":"ぞ", "た":"だ", "ち":"ぢ", "つ":"づ", "て":"で", "と":"ど", "は":"ば", "ひ":"び", "ふ":"ぶ", "へ":"べ", "ほ":"ぼ", "う":"ゔ", "ゝ":"ゞ", "カ":"ガ", "キ":"ギ", "ク":"グ", "ケ":"ゲ", "コ":"ゴ", "サ":"ザ", "シ":"ジ", "ス":"ズ", "セ":"ゼ", "ソ":"ゾ", "タ":"ダ", "チ":"ヂ", "ツ":"ヅ", "テ":"デ", "ト":"ド", "ハ":"バ", "ヒ":"ビ", "フ":"ブ", "ヘ":"ベ", "ホ":"ボ", "ウ":"ヴ", "ヽ":"ヾ", "ワ":"ヷ", "ヰ":"ヸ", "ヱ":"ヹ", "ヲ":"ヺ" }; // 半濁点(結合文字 U+309A, 独立文字 U+309C, 半角 U+FF9F)の置換 text = text.replace(/([はひふへほハヒフヘホ])[\u309A\u309C\uFF9F]/g, function(match, p1) { return handakuMap[p1]; }); // 濁点(結合文字 U+3099, 独立文字 U+309B, 半角 U+FF9E)の置換 text = text.replace(/([かきくけこさしすせそたちつてとはひふへほうゝカキクケコサシスセソタチツテトハヒフヘホウヽワヰヱヲ])[\u3099\u309B\uFF9E]/g, function(match, p1) { return dakuMap[p1]; }); // 置換したテキストを反映 sel.Text = text; } // もともと非選択状態だった場合は、全体選択を解除してカーソルを先頭に戻す if (isEmpty) { // meCollapseStart は定数(0) sel.Collapse(0); } </syntaxhighlight> == 変更履歴 == * 2026-03-30: 初版公開
編集内容の要約:
MeryWikiへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
MeryWiki:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
このページを編集するには、下記の数式を計算してその答えを欄に入力してください (
ヘルプ
):
いちたすには =
キャンセル
編集ヘルプ
(新しいウィンドウで開きます)
スポンサーリンク
ナビゲーション メニュー
個人用ツール
ログインしていません
トーク
投稿記録
アカウント作成
ログイン
名前空間
ページ
議論
日本語
表示
閲覧
編集
履歴表示
その他
検索
スポンサーリンク
スポンサーリンク
案内
メインページ
ヘルプ
よくある質問
マクロリファレンス
マクロライブラリ
プラグインライブラリ
構文ファイル
テーマ
寄付・開発支援
練習用ページ
開発室
開発者のブログ
ツール
スポンサーリンク