http://www.google.com/dictionary/json?callback=cb&q=word&sl=en&tl=en&restrict=pr%%2Cde&client=te emacs で Google 辞書 API を呼び出すと、 次のような応答が得られます。
"entries": [{
"type": "example",
"terms": [{
"type": "text",
"text": "his grandfather\x27s \x3cem\x3ewords\x3c/em\x3e had been meant kindly",
"language": "en"
}]
}]
ご覧のとおり、「テキスト」にはエスケープされたユニコードがあります。以下のような関数に変換したい。
(defun unescape-string (string)
"Return unescape unicode string"
...
)
(unescape-string "his grandfather\x27s \x3cem\x3ewords\x3c/em\x3e")
=> "his grandfathers's <em>words</em>"
(insert #x27)'
(insert #x27)'
(insert #x3c)<
(insert #x3e)>
これが私が試したものです
- 文字列内の正規表現を置換
- http://www.emacswiki.org/emacs/ElispCookbook#toc33のようなカスタム置換
しかし、「\x123」を対応するユニコードに置き換えてバッファまたは文字列にする方法がわからないと思います。
前もって感謝します