(API )架電結果の一覧取得の実行結果データについて

完了

コメント

4件のコメント

  • Kompiraサポートチーム

    ご質問ありがとうございます。

    U+200F は Unicode の制御文字の1つで、 Right-to-left mark (RLM) 、すなわち右から左に向かって文字を記述するための制御文字となります。

    実際に見てみますと、送られてきたメッセージにおいて該当箇所は「08-09-2022T09:02:32.083476200Z」 と記載されているのが確認できるのに対し、 API からの出力から制御文字を除外してみると「2022-09-08T09:02:32.083476200Z」と、日付部分の順番が異なることがわかります。
    これは、おそらくイギリス式の日付表記である「日→月→年」に見た目を合わせるために、先の制御文字を用いて日付部分の情報の並び順を逆転させているものと考えられます。

    このような目に見えない制御文字が API 出力においては可視化されて出力された形となります。

    以上、よろしくお願いいたします。

    0
    コメントアクション Permalink
  • 原井麻有

    お世話になっています。

    ご回答ありがとうございました。
    以前もしかしたら一度聞いているかもしれませんが、
    APIの出力jsonファイルの文字コードは Unicode
    文字符号化形式は utf-8
    で間違いなかったでしょうか?

    上記 U+200F(RLM) を除外するため(プログラムエラー発生のため)
    正規表現指定で16進数の [U+200F] を指定してみたのですが、
    うまくいきません。
    ファイルはjson を直接見ており、使用しているソフトは Visual Studio Code です。
    VSCode も設定は utf-8 です。

    手操作で除くことは可能ですが、 [U+200F] を検索するにはどのようにすればよろしいでしょうか?
    恐縮ですがご教示いただけると助かります。

    0
    コメントアクション Permalink
  • Kompiraサポートチーム

    API からの出力仕様としてはご理解の通りとなります。

    正規表現を用いて今回の制御文字とマッチさせる場合は \u200f と指定するのが正しいと考えられます。
    また、 Visual Studio Code の正規表現であれば、今回のものを含む各種制御文字全てにマッチする指定として \p{C} という指定も使用できるようです。

    よろしくお願いいたします。

    0
    コメントアクション Permalink
  • 原井麻有

    ご回答ありがとうございました。
    \u200f

    \p{C} 
    ともにマッチできました。
    ご教示感謝いたします。

    この質問はクローズでお願いいたします。
    また何かありましたらよろしくお願いいたします。

    0
    コメントアクション Permalink

サインインしてコメントを残してください。