とにかく動かすPower Automate - 正規表現編

Power Automateは正規表現を使えます。
こうなると、もはやローコードとは言えませんが。
長い文章から特定の文字列を取り出したりするときに使えます。 (さらに…)

JSONを見やすい形に変換する「JSON2CSV」

Streamlitを使って簡単なツールを作ってみました。
JSONをCSVなどに自動的に変換するツールです。 (さらに…)

UiPathでJSONを処理する方法

分かりにくいので整理しました。メモとして残します。 (さらに…)

PythonでJSONをエンコードしない方法

JSONは値をユニコードでエンコードします。
そのため次のようになります。

[{"name": "\u82a5\u5ddd\u9f8d\u4e4b\u4ecb"}, {"name": "\u76f4\u6728\u4e09\u5341\u4e94"}]

内容が分かりません。
JSONを修正したい、中身を簡単に確認したい、というときに困ります。
エンコードしない方法を考えました。 (さらに…)

JSONとCSVを相互に変換する「JSON⇄CSV」

JSONをCSVに変換するツールを作っていて「前に作ったことがあるぞ」と思い出して、ファイルを探すとありました。無駄な作業をしてしまいました。 (さらに…)

Googleにある自分のデータをダウンロードする方法

Googleマップに載せた自分のクチコミを全てエクスポートしたいと思います。
調べてみるとGoogleにアップした様々な自分のデータをダウンロードすることができるようです。
例えばクチコミを全てダウンロードすることができます。Gmailのデータもダウンロードできるようです。

Googleのデータをダウンロードする方法を紹介します。ここでは例としてGoogleマップのクチコミをダウンロードするケースで説明します。 (さらに…)

ExcelのテーブルをJSON形式に変換するマクロ

ある目的があって試しに作ってみたところ簡単にできたものの実際には使わなかったマクロを紹介します。
ExcelのテーブルをJSON形式に変換するマクロです。
次のような表があったとします。 (さらに…)

Bing APIを使う

BingもGoogleやYahoo!と同様にAPIがあります。
IDを取得すれば、簡単に使うことができます。
使い方は次の通りです。 (さらに…)

WikipediaAPIを使ってみる

今、GoogleやYahoo!のAPIについて調べているのですが、その中でウィキペディアの検索結果を取得できるAPIがあることを知りました。

WikipediaAPI - ウィキペディア情報をサイトで利用できるAPI

5年も前からあるのですね。
どんな動きをするのか、サンプルを作って確認してみました。jQueryを使っています。 (さらに…)

JSONの\uXXXXをデコード

TwitterAPIなどを使い、JSON形式でデータを取得した場合、文字列が次のようになっている場合があります。

\u4eca\u671d\u306f

初めて見ると「文字化けか」と思ってしまうかもしれませんが、これはJSONのルール通りなんだそうです。
この「\uXXXX」形式は「Unicode文字エスケープシーケンス」、「unicode escape sequence」などと呼ぶそうです。
2.4.1 Unicode 文字エスケープ シーケンス (C#)
Unicodeにおける文字番号を4桁の16進数に置き換えて、頭に「\u」を付けます。
これをJavaScriptを使って人間が読める形にする方法(デコード)を調べました。
単純な方法

簡単なのは次のようにJavaScriptでページに書く方法です。

document.write("\u4eca\u671d\u306f");

これで次のように表示されます。

今朝は

関数を使う方法

「json_str_decode」という関数を作ってみました。
このケースでは「\」が(JavaScriptの)エスケープシーケンスに該当してしまうので「\\」のようにしないと正しく認識しません。

document.write(json_str_decode("\\u4eca\\u671d\\u306f"));
function json_str_decode(str){
  arrs=str.match(/\\u.{4}/g);
  var t="";
  for(i=0;i<arrs.length;i++){
    t+=String.fromCharCode(arrs[i].replace("\\u","0x"));
  }
  return(t);
}

次のようにテキストエリアなどに貼り付けて使う場合には「\\」とする必要がありません。

<textarea id="ta">\u4eca\u671d\u306f</textarea>
<div id="mydiv"></div>
var a=document.getElementById("ta").value;
document.write(json_str_decode(a));

古い記事

タグ

カテゴリー

最近の投稿

最近のコメント

固定ページ

アーカイブ

stabucky

写真

メタ情報