
No.2ベストアンサー
- 回答日時:
国語辞典のようにソートしたければ Lingua::JA::Sort::JIS モジュールでできますよ。
# ソースコードのエンコーディングが Shift_JIS の場合
use strict;
use Lingua::JA::Sort::JIS;
use Encode qw/from_to/;
my $jis = Lingua::JA::Sort::JIS->new;
my @words = qw/はう ぱあ ばい/;
# UTF-8 バイト列に変換(必須)
map { from_to($_, "Shift_JIS" => "UTF-8") } @words;
for my $word ($jis->jsort(@words)) {
# 必要に応じてエンコーディングを変換
from_to($word, "UTF-8" => "Shift_JIS");
print $word, "\n";
}
エンコーディングの変換が面倒ですが、UTF-8 のファイルから読んでそのまま書き出せばもっとすっきりします。
参考URL:http://search.cpan.org/~sadahiro/Lingua-JA-Sort- …
ありがとうございました。
参考http://search.cpan.org/src/SADAHIRO/Lingua-JA-So …
#awk版
function aiu(moji1){
out1=moji1;
sub(/[あぁアァアァ]/ ,"あ",out1);
sub(/[かがカガヵカガ]/ ,"か",out1);
sub(/[さざサザサザ]/ ,"さ",out1);
sub(/[ただタダタダ]/ ,"た",out1);
sub(/[なナナ]/ ,"な",out1);
sub(/[はばぱハバパハバパ]/ ,"は",out1);
sub(/[まママ]/ ,"ま",out1);
sub(/[やゃヤャヤャ]/ ,"や",out1);
sub(/[らララ]/ ,"ら",out1);
sub(/[わゎワヮワ]/ ,"わ",out1);
sub(/[いぃイィイィ]/ ,"い",out1);
sub(/[きぎキギキギ]/ ,"き",out1);
sub(/[しじシジシジ]/ ,"し",out1);
sub(/[ちぢチヂチヂ]/ ,"ち",out1);
sub(/[にニニ]/ ,"に",out1);
sub(/[ひびぴヒビピヒビピ]/ ,"ひ",out1);
sub(/[みミミ]/ ,"み",out1);
sub(/[りリリ]/ ,"り",out1);
sub(/[ゐヰ]/ ,"ゐ",out1);
sub(/[うぅウヴゥウヴゥ]/ ,"う",out1);
sub(/[くぐクグクグ]/ ,"く",out1);
sub(/[すずスズスズ]/ ,"す",out1);
sub(/[つづっツヅッツヅッ]/ ,"つ",out1);
sub(/[ぬヌヌ]/ ,"ぬ",out1);
sub(/[ふぶぷフブプフブプ]/ ,"ふ",out1);
sub(/[むムム]/ ,"む",out1);
sub(/[ゆゅユュユュ]/ ,"ゆ",out1);
sub(/[るルル]/ ,"る",out1);
sub(/[えぇエェエェ]/ ,"え",out1);
sub(/[けげケゲヶケゲ]/ ,"け",out1);
sub(/[せぜセゼセゼ]/ ,"せ",out1);
sub(/[てでテデテデ]/ ,"て",out1);
sub(/[ねネネ]/ ,"ね",out1);
sub(/[へべぺヘベペヘベペ]/ ,"へ",out1);
sub(/[めメメ]/ ,"め",out1);
sub(/[れレレ]/ ,"れ",out1);
sub(/[ゑヱ]/ ,"ゑ",out1);
sub(/[おぉオォオォ]/ ,"お",out1);
sub(/[こごコゴコゴ]/ ,"こ",out1);
sub(/[そぞソゾソゾ]/ ,"そ",out1);
sub(/[とどトドトド]/ ,"と",out1);
sub(/[のノノ]/ ,"の",out1);
sub(/[ほぼぽホボポホボポ]/ ,"ほ",out1);
sub(/[もモモ]/ ,"も",out1);
sub(/[よょヨョヨョ]/ ,"よ",out1);
sub(/[ろロロ]/ ,"ろ",out1);
sub(/[をヲヲ]/ ,"を",out1);
sub(/[んンン]/ ,"ん",out1);
return out1}
No.1
- 回答日時:
もうすこしはっきりと要件を書くべきです。
濁音や半濁音は「同じ」と見做してソートしたいということですか?
ありがとうございました。
辞書式順序です。
http://ja.wikipedia.org/wiki/%E4%BA%94%E5%8D%81% …
http://www.sanseido.net/main/dictionary/hanrei/g …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(パソコン・スマホ・電化製品) エクセルに詳しい方にお伺いします。50人ぐらいの住所録ですが、フィルターで五十音順に並べ替えたら、一 6 2023/08/07 18:49
- 韓国語 日本語の不備について 音が無い言葉を追加するべきじゃないでしょうか? 例えば「あ"」です この音は日 3 2023/04/25 08:20
- 楽器・演奏 和音や純正律、平均律の話がわかりません。 管楽器(弦楽器とかも入ると思いますが)はピアノ等と違い、音 4 2022/05/26 18:15
- Google Drive Googleスプレッドシートについて質問です。 今作っているデータで、 シート1→ベタ打ちでひたすら 2 2022/05/18 14:27
- イヤホン・ヘッドホン・補聴器 助けてください。 4 2022/05/15 01:42
- C言語・C++・C# メインプログラムに#include <algorithm>を書いて、 そのメインプログラムが // 3 2023/05/02 11:24
- その他(暮らし・生活・行事) お腹がならないようにする方法何かありませんか? 3 2022/09/29 23:44
- 教育・ドキュメンタリー 80年頃の番組の名前 2 2023/02/22 15:34
- 音楽配信 おすすめの音楽サブスクを教えてください 2 2023/08/07 16:50
- その他(暮らし・生活・行事) 警察に相談しようか悩む騒音トラブル 6 2023/03/13 18:56
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
文字コードの%E3%80%とは何です...
-
SJIS->UTF8->SJISコード変換に...
-
CString から LPCTSTRの型に変換
-
ローマ字からカナに変換する方...
-
Excel VBAでPDFファイルをMicro...
-
エンコードとコンバートの違い...
-
文字列が勝手にエスケープ文字...
-
テキストをhtml変換するには
-
tkinter widget ことえり変換で...
-
Encode.pmで「髙」(ハシゴ高)...
-
文字列を quoted-printable 文...
-
CSVファイルの中で、「 , 」カ...
-
エクセルで数値を全角文字(カ...
-
住宅にカナを入力する際に丁目...
-
VBA 文字に半角が含まれて...
-
Visual Studioで ユニコード "...
-
全角英数字の必要性が理解できない
-
Excelについて質問です。 セル...
-
配列中の検索文字全が含まれる...
-
プログラミングの問題です。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel VBAでPDFファイルをMicro...
-
CString から LPCTSTRの型に変換
-
文字コードの%E3%80%とは何です...
-
CString型からdouble型への変換
-
SQLのデータで半角カナを全角に...
-
ローマ字からカナに変換する方...
-
Delphiの型変換
-
VBScript 全角英数記号→半角英...
-
テキストをhtml変換するには
-
SJIS->UTF8->SJISコード変換に...
-
漢数字の変換
-
VBScript文字列をSJISからUTF8...
-
Encode.pmで「髙」(ハシゴ高)...
-
vbwide(半角⇒全角変換)について
-
文字列を quoted-printable 文...
-
エクセルでの漢字(全角ひらが...
-
oracle10g eucのblobをsjisのch...
-
goo blogでyou tube を埋め込む...
-
VB6にも「ToString」ってあり...
-
漢字からカタカナ変換マクロ
おすすめ情報