{"id":184,"date":"2019-03-18T00:00:13","date_gmt":"2019-03-18T09:00:13","guid":{"rendered":"https:\/\/www.ishikawasekkei.com\/?p=184"},"modified":"2019-03-20T19:21:45","modified_gmt":"2019-03-21T04:21:45","slug":"hira2han","status":"publish","type":"post","link":"https:\/\/www.ishikawasekkei.com\/index.php\/2019\/03\/18\/hira2han\/","title":{"rendered":"\u30ed\u30fc\u30de\u5b57\u5909\u63db\u30d5\u30a1\u30f3\u30af\u30b7\u30e7\u30f3"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\u3000\u304a\u4ed5\u4e8b\u3067\u3072\u3089\u304c\u306a\u3092\u30ed\u30fc\u30de\u5b57\u306b\u5909\u63db\u3059\u308b\u30d7\u30ed\u30b0\u30e9\u30e0\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u306e\u3067\u3059\u304c\u3001\u3061\u3087\u3063\u3068\u8abf\u3079\u3066\u307f\u3066\u3001\u3046\u307e\u304f\u5229\u7528\u3067\u304d\u305d\u3046\u306a\u3084\u3064\u304c\u610f\u5916\u3068\u306a\u304b\u3063\u305f\u306e\u3067\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9Oracle\u7528\u3068\u3057\u3066\u4f5c\u3063\u3066\u307f\u307e\u3057\u305f\u3002<br>\u3000\u3054\u5229\u7528\u306f\u81ea\u5df1\u8cac\u4efb\u3067\u3069\u3046\u305e\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>CREATE OR REPLACE FUNCTION HIRA2ROMAN (HIRA IN VARCHAR2)\n  RETURN VARCHAR2\nIS\n  TYPE tMapping IS RECORD (\n    hira varchar2(10), roman varchar2(10)\n  );\n  TYPE tTable IS TABLE OF tMapping INDEX BY BINARY_INTEGER;\n  vTable tTable;\n  REP VARCHAR2(4000);\n-- http:\/\/www.mext.go.jp\/b_menu\/hakusho\/nc\/k19541209001\/k19541209001.html\n-- \u7b2c\u4e8c\u8868\u304c\u3042\u308b\u3082\u306e\u306f\u305d\u3061\u3089\u3092\u512a\u5148\u3057\u3066\u3001\u5909\u63db\u5bfe\u8c61\u306e\u3072\u3089\u304c\u306a\u304c\u9577\u3044\u9806\u306b\u306a\u3089\u3079\u308b\n  PROCEDURE INIT IS\n    i NUMBER;\n  BEGIN\n    i := 1;\n    vTable(i).hira := '\u304d\u3083'; vTable(i).roman := 'kya'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u304d\u3085'; vTable(i).roman := 'kyu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u304d\u3087'; vTable(i).roman := 'kyo'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u304e\u3083'; vTable(i).roman := 'gya'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u304e\u3085'; vTable(i).roman := 'gyu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u304e\u3087'; vTable(i).roman := 'gyo'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u304f\u3041'; vTable(i).roman := 'kwa'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3050\u3041'; vTable(i).roman := 'gwa'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3057\u3083'; vTable(i).roman := 'sha'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3057\u3085'; vTable(i).roman := 'shu'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3057\u3087'; vTable(i).roman := 'sho'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3058\u3083'; vTable(i).roman := 'ja'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3058\u3085'; vTable(i).roman := 'ju'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3058\u3087'; vTable(i).roman := 'jo'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3061\u3083'; vTable(i).roman := 'cha'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3061\u3085'; vTable(i).roman := 'chu'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3061\u3087'; vTable(i).roman := 'cho'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3062\u3083'; vTable(i).roman := 'dya'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3062\u3085'; vTable(i).roman := 'dyu'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3062\u3087'; vTable(i).roman := 'dyo'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u306b\u3083'; vTable(i).roman := 'nya'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u306b\u3085'; vTable(i).roman := 'nyu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u306b\u3087'; vTable(i).roman := 'nyo'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3072\u3083'; vTable(i).roman := 'hya'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3072\u3085'; vTable(i).roman := 'hyu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3072\u3087'; vTable(i).roman := 'hyo'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3073\u3083'; vTable(i).roman := 'bya'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3073\u3085'; vTable(i).roman := 'byu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3073\u3087'; vTable(i).roman := 'byo'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3074\u3083'; vTable(i).roman := 'pya'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3074\u3085'; vTable(i).roman := 'pyu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3074\u3087'; vTable(i).roman := 'pyo'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u307f\u3083'; vTable(i).roman := 'mya'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u307f\u3085'; vTable(i).roman := 'myu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u307f\u3087'; vTable(i).roman := 'myo'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u308a\u3083'; vTable(i).roman := 'rya'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u308a\u3085'; vTable(i).roman := 'ryu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u308a\u3087'; vTable(i).roman := 'ryo'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3042'; vTable(i).roman := 'a'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3044'; vTable(i).roman := 'i'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3046'; vTable(i).roman := 'u'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3048'; vTable(i).roman := 'e'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u304a'; vTable(i).roman := 'o'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u304b'; vTable(i).roman := 'ka'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u304c'; vTable(i).roman := 'ga'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u304d'; vTable(i).roman := 'ki'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u304e'; vTable(i).roman := 'gi'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u304f'; vTable(i).roman := 'ku'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3050'; vTable(i).roman := 'gu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3051'; vTable(i).roman := 'ke'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3052'; vTable(i).roman := 'ge'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3053'; vTable(i).roman := 'ko'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3054'; vTable(i).roman := 'go'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3055'; vTable(i).roman := 'sa'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3056'; vTable(i).roman := 'za'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3057'; vTable(i).roman := 'shi'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3058'; vTable(i).roman := 'ji'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3059'; vTable(i).roman := 'su'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u305a'; vTable(i).roman := 'zu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u305b'; vTable(i).roman := 'se'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u305c'; vTable(i).roman := 'ze'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u305d'; vTable(i).roman := 'so'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u305e'; vTable(i).roman := 'zo'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u305f'; vTable(i).roman := 'ta'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3060'; vTable(i).roman := 'da'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3061'; vTable(i).roman := 'chi'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3062'; vTable(i).roman := 'di'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3064'; vTable(i).roman := 'tsu'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3065'; vTable(i).roman := 'du'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3066'; vTable(i).roman := 'te'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3067'; vTable(i).roman := 'de'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3068'; vTable(i).roman := 'to'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3069'; vTable(i).roman := 'do'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u306a'; vTable(i).roman := 'na'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u306b'; vTable(i).roman := 'ni'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u306c'; vTable(i).roman := 'nu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u306d'; vTable(i).roman := 'ne'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u306e'; vTable(i).roman := 'no'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u306f'; vTable(i).roman := 'ha'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3070'; vTable(i).roman := 'ba'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3071'; vTable(i).roman := 'pa'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3072'; vTable(i).roman := 'hi'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3073'; vTable(i).roman := 'bi'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3074'; vTable(i).roman := 'pi'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3075'; vTable(i).roman := 'fu'; i := i + 1; -- \u7b2c\u4e8c\u8868\n    vTable(i).hira := '\u3076'; vTable(i).roman := 'bu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3077'; vTable(i).roman := 'pu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3078'; vTable(i).roman := 'he'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3079'; vTable(i).roman := 'be'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u307a'; vTable(i).roman := 'pe'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u307b'; vTable(i).roman := 'ho'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u307c'; vTable(i).roman := 'bo'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u307d'; vTable(i).roman := 'po'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u307e'; vTable(i).roman := 'ma'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u307f'; vTable(i).roman := 'mi'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3080'; vTable(i).roman := 'mu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3081'; vTable(i).roman := 'me'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3082'; vTable(i).roman := 'mo'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3084'; vTable(i).roman := 'ya'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3086'; vTable(i).roman := 'yu'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3088'; vTable(i).roman := 'yo'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3089'; vTable(i).roman := 'ra'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u308a'; vTable(i).roman := 'ri'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u308b'; vTable(i).roman := 'ru'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u308c'; vTable(i).roman := 're'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u308d'; vTable(i).roman := 'ro'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u308f'; vTable(i).roman := 'wa'; i := i + 1; -- \u7b2c\u4e00\u8868\n    vTable(i).hira := '\u3092'; vTable(i).roman := 'wo'; i := i + 1; -- \u7b2c\u4e8c\u8868\n  END;\nBEGIN\n  INIT;\n  REP := HIRA;\n  FOR i in vTable.FIRST .. vTable.LAST LOOP\n    REP := REPLACE(REP, vTable(i).hira, vTable(i).roman);\n  END LOOP;\n\n  -- \u305d\u306e\u4ed6\u306e\u5909\u63db\u30eb\u30fc\u30eb\n  -- y\u3068\u6bcd\u97f3(aeiou)\u304c\u7d9a\u304f\u300c\u3093\u300d\u306f\u3001\u300cn'\u300d\u3068\u7d9a\u304fy\u307e\u305f\u306f\u6bcd\u97f3(aeiou)\u306b\u5909\u63db\n  REP := REGEXP_REPLACE(REP,'\u3093([yaeiou])','n''\\1');\n  -- \u305d\u306e\u4ed6\u306e\u300c\u3093\u300d\u306f\u300cn\u300d\u306b\u5909\u63db\n  REP := REPLACE(REP,'\u3093','n');\n  -- \u300c\u3063\u300d\u306f\u3001\u7d9a\u304f\u5b50\u97f3\u306e\u6587\u5b57\u3092\u91cd\u306d\u308b\u3088\u3046\u5909\u63db\n  REP := REGEXP_REPLACE(REP,'\u3063(.)','\\1\\1');\n  RETURN REP;\nEND;\n\/<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u3000\u304a\u4ed5\u4e8b\u3067\u3072\u3089\u304c\u306a\u3092\u30ed\u30fc\u30de\u5b57\u306b\u5909\u63db\u3059\u308b\u30d7\u30ed\u30b0\u30e9\u30e0\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u306e\u3067\u3059\u304c\u3001\u3061\u3087\u3063\u3068\u8abf\u3079\u3066\u307f\u3066\u3001\u3046\u307e\u304f\u5229\u7528\u3067\u304d\u305d\u3046\u306a\u3084\u3064\u304c\u610f\u5916\u3068\u306a\u304b\u3063\u305f\u306e\u3067\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9Oracle\u7528\u3068\u3057\u3066\u4f5c\u3063\u3066\u307f\u307e\u3057\u305f\u3002\u3000\u3054\u5229\u7528\u306f\u81ea\u5df1\u8cac\u4efb\u3067\u3069\u3046\u305e\u3002<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[],"class_list":["post-184","post","type-post","status-publish","format-standard","hentry","category-program"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.ishikawasekkei.com\/index.php\/wp-json\/wp\/v2\/posts\/184","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ishikawasekkei.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ishikawasekkei.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ishikawasekkei.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ishikawasekkei.com\/index.php\/wp-json\/wp\/v2\/comments?post=184"}],"version-history":[{"count":6,"href":"https:\/\/www.ishikawasekkei.com\/index.php\/wp-json\/wp\/v2\/posts\/184\/revisions"}],"predecessor-version":[{"id":201,"href":"https:\/\/www.ishikawasekkei.com\/index.php\/wp-json\/wp\/v2\/posts\/184\/revisions\/201"}],"wp:attachment":[{"href":"https:\/\/www.ishikawasekkei.com\/index.php\/wp-json\/wp\/v2\/media?parent=184"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ishikawasekkei.com\/index.php\/wp-json\/wp\/v2\/categories?post=184"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ishikawasekkei.com\/index.php\/wp-json\/wp\/v2\/tags?post=184"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}