## -------------------------------------------------------- ## knj-unify: ## char *knjunify'doit(char *buf); ## -------------------------------------------------------- ## 与えられた文字列を新字体(?)にして返す package knjunify; %knjcode_tbl = ( '穐', '秋', '鯵', '鰺', '壱', '一', '蔭', '陰', '欝', '鬱', '云', '言', '鴬', '鶯', '蛎', '蠣', '鈎', '鉤', '撹', '攪', '竃', '竈', '潅', '灌', '諌', '諫', '尭', '堯', '駈', '駆', '頚', '頸', '砿', '礦', '輯', '集', '靭', '靱', '栖', '棲', '賎', '賤', '曾', '曽', '瀧', '滝', '壷', '壺', '砺', '礪', '嶋', '島', '梼', '檮', '涛', '濤', '燈', '灯', '弐', '二', '迩', '邇', '禰', '祢', '埜', '野', '盃', '杯', '楳', '梅', '蝿', '蠅', '桧', '檜', '冨', '富', '附', '付', '峯', '峰', '侭', '儘', '薮', '藪', '涌', '湧', '龍', '竜', '聯', '連', '篭', '籠', '弌', '一', '乘', '乗', '亂', '乱', '豫', '予', '亊', '事', '弍', '二', '仂', '働', '佛', '仏', '來', '来', '假', '仮', '會', '会', '傳', '伝', '僞', '偽', '價', '価', '儉', '倹', '兒', '児', '兔', '兎', '兩', '両', '囘', '回', '册', '冊', '决', '決', '冱', '冴', '冰', '氷', '况', '況', '凉', '涼', '處', '処', '凾', '函', '刄', '刃', '剩', '剰', '劍', '剣', '劔', '剣', '劒', '剣', '剱', '剣', '劑', '剤', '辨', '弁', '辧', '弁', '劵', '券', '勞', '労', '勳', '勲', '勵', '励', '勸', '勧', '區', '区', '卆', '卒', '凖', '準', '卷', '巻', '參', '参', '雙', '双', '咒', '呪', '哥', '歌', '單', '単', '營', '営', '嚴', '厳', '囑', '嘱', '圈', '圏', '國', '国', '圍', '囲', '圓', '円', '團', '団', '圖', '図', '壞', '壊', '墮', '堕', '壓', '圧', '壘', '塁', '壤', '壌', '壯', '壮', '壹', '一', '壻', '婿', '壽', '寿', '夛', '多', '梦', '夢', '夲', '本', '竒', '奇', '奧', '奥', '奬', '奨', '婬', '淫', '孃', '嬢', '學', '学', '實', '実', '寢', '寝', '寫', '写', '寶', '宝', '將', '将', '專', '専', '對', '対', '屆', '届', '屬', '属', '峽', '峡', '嵜', '崎', '嶽', '岳', '巖', '巌', '帋', '紙', '帶', '帯', '廣', '広', '廚', '厨', '廢', '廃', '廳', '庁', '廰', '庁', '彈', '弾', '彌', '弥', '彎', '湾', '徃', '往', '徑', '径', '從', '従', '恆', '恒', '惡', '悪', '惠', '恵', '惱', '悩', '愼', '慎', '慘', '惨', '憇', '憩', '應', '応', '懷', '懐', '戀', '恋', '戰', '戦', '戲', '戯', '拔', '抜', '擔', '担', '拜', '拝', '拂', '払', '挾', '挟', '搜', '捜', '插', '挿', '搖', '揺', '攝', '摂', '據', '拠', '擇', '択', '擧', '挙', '擴', '拡', '收', '収', '效', '効', '敕', '勅', '敍', '叙', '敘', '叙', '數', '数', '變', '変', '斷', '断', '晉', '晋', '晝', '昼', '曉', '暁', '暸', '瞭', '霸', '覇', '枩', '松', '條', '条', '棧', '桟', '楝', '棟', '榮', '栄', '樂', '楽', '權', '権', '樞', '枢', '樣', '様', '樓', '楼', '檢', '検', '櫻', '桜', '盜', '盗', '飮', '飲', '歐', '欧', '歡', '歓', '歸', '帰', '殘', '残', '殼', '殻', '毆', '殴', '氣', '気', '沒', '没', '泪', '涙', '淨', '浄', '淺', '浅', '滿', '満', '溪', '渓', '溯', '遡', '滯', '滞', '澁', '渋', '濳', '潜', '澤', '沢', '濟', '済', '濕', '湿', '濱', '浜', '灣', '湾', '燒', '焼', '爐', '炉', '爭', '争', '爲', '為', '犧', '犠', '狹', '狭', '默', '黙', '獨', '独', '獸', '獣', '獵', '猟', '獻', '献', '珎', '珍', '璢', '瑠', '甞', '嘗', '甼', '町', '畄', '留', '畧', '略', '畫', '画', '當', '当', '疊', '畳', '癡', '痴', '發', '発', '皃', '貌', '盡', '尽', '眞', '真', '碎', '砕', '祕', '秘', '祿', '禄', '齋', '斎', '禪', '禅', '禮', '礼', '稱', '称', '稻', '稲', '穗', '穂', '穉', '稚', '穩', '穏', '龝', '秋', '穰', '穣', '窗', '窓', '竊', '窃', '竝', '並', '筱', '篠', '篦', '箆', '粮', '糧', '粹', '粋', '絲', '糸', '經', '経', '總', '総', '縣', '県', '縱', '縦', '繪', '絵', '繩', '縄', '繼', '継', '續', '続', '纒', '纏', '纖', '繊', '缺', '欠', '罐', '缶', '罸', '罰', '羣', '群', '譱', '善', '飜', '翻', '耻', '恥', '聲', '声', '聰', '聡', '聽', '聴', '肅', '粛', '冐', '冒', '脉', '脈', '脣', '唇', '腦', '脳', '膓', '腸', '膽', '胆', '臟', '臓', '臺', '台', '與', '与', '舊', '旧', '舍', '舎', '舖', '舗', '舩', '船', '艷', '艶', '莖', '茎', '莊', '荘', '菴', '庵', '萠', '萌', '萬', '万', '蘂', '蕊', '藏', '蔵', '藝', '芸', '藥', '薬', '蘓', '蘇', '蘆', '芦', '乕', '虎', '號', '号', '螢', '蛍', '蟲', '虫', '蠶', '蚕', '蠻', '蛮', '衞', '衛', '裝', '装', '襃', '褒', '覺', '覚', '覽', '覧', '觀', '観', '觸', '触', '謠', '謡', '譁', '嘩', '證', '証', '譯', '訳', '譽', '誉', '讀', '読', '讎', '讐', '讓', '譲', '讚', '讃', '谿', '渓', '豎', '竪', '豐', '豊', '貍', '狸', '貳', '二', '賣', '売', '贊', '賛', '踐', '践', '蹈', '踏', '輕', '軽', '輌', '両', '轉', '転', '辭', '辞', '辯', '弁', '迯', '逃', '遞', '逓', '隨', '随', '遲', '遅', '邊', '辺', '邉', '辺', '鄰', '隣', '醉', '酔', '醫', '医', '釀', '醸', '釋', '釈', '錢', '銭', '鎭', '鎮', '鐵', '鉄', '鐡', '鉄', '鑄', '鋳', '鑛', '鉱', '關', '関', '陷', '陥', '險', '険', '隱', '隠', '雜', '雑', '靈', '霊', '靜', '静', '顏', '顔', '顯', '顕', '餘', '余', '餠', '餅', '騷', '騒', '驅', '駆', '驛', '駅', '驗', '験', '髓', '髄', '髮', '髪', '鬪', '闘', '鷄', '鶏', '鹽', '塩', '麥', '麦', '點', '点', '黨', '党', '皷', '鼓', '鼡', '鼠', '齊', '斉', '齒', '歯', '齡', '齢', '龜', '亀', '槇', '槙', '遙', '遥', '瑤', '瑶', ); sub doit { local($cdr) = @_; local($car, $carn, $ret, ); while(0 < length($cdr)) { $carn = 2; if($cdr =~ /^[\x00-\x7f]/) { $carn = 1; } $car = substr($cdr,0,$carn); $cdr = substr($cdr,$carn); if($knjcode_tbl{$car} =~ /./) { $ret .= $knjcode_tbl{$car}; } else { $ret .= $car; } } return $ret; } 1;