Gauche ひらがな・カタカナ変換をする
2009年06月16日
text.tr
モジュールを使って Gauche で "ひらがな<->カタカナ" の変換をする。
(use text.tr) (define (kana-translator from to) (define (translator str) (with-string-io str (lambda () (let ((ptr (tr from to))) (let loop ((chr (read-char))) (unless (eof-object? chr) (ptr))))))) translator) ;; ひらがな -> カタカナ 変換 (define (hira2kata str) ((kana-translator "ぁ-ん" "ァ-ン") str)) (hira2kata "ほげほげパダーン") gosh> "ホゲホゲパダーン" ;; カタカナ -> ひらがな 変換 (define (kata2hira str) ((kana-translator "ァ-ン" "ぁ-ん") str)) (kata2hira "ほげほげパダーン") gosh> "ほげほげぱだーん"
追記:string-tr
を使えばよかった。
;; ひらがな -> カタカナ 変換 (define (hira2kata str) (string-tr str "ぁ-ん" "ァ-ン")) (hira2kata "ほげほげパダーン") gosh> "ホゲホゲパダーン" ;; カタカナ -> ひらがな 変換 (define (kata2hira str) (string-tr str "ァ-ン" "ぁ-ん")) (kata2hira "ほげほげパダーン") gosh> "ほげほげぱだーん"
参考:Gauche ユーザリファレンス: 11.39 text.tr – 文字変換
プログラミングGauche
posted with amazlet at 08.11.14
Kahuaプロジェクト
オライリージャパン
売り上げランキング: 22775
オライリージャパン
売り上げランキング: 22775