ルドルフもわたるふもいろいろあってな

Microsoft 365、Power Platform、PowerShellについて調べたことや検証したことなどを投稿します。技術の話は面白い。

日本語で作成した列の内部名から列名を調べる方法

小ネタです。

背景

自社内でこんなヘルプ依頼をもらいました。

検索の管理プロパティ設定でクロールされたプロパティを探しています。
作成時の列名から変更されている列があり、それを探すときに日本語名が分からなくて困りました。

どういうこと?

リストの設定画面を開いて、内部名を確認したい列をクリックして列の設定画面を開きます。
列の設定画面を開いたときのURLで「Field=○○○○」の○○○○部分が内部名です。

列を作成する際に日本語の文字列を入力して列を作成した場合は、内部名はエンコードされた文字列になります。

「この内部名から列名を調べたい」ということです。

f:id:wataruf01:20220321230116p:plain

手順

1.列の設定画面のURLで「Field=○○○○」の○○○○部分をメモする。
 Field=%5Fx8ffd%5F%5Fx52a0%5F%5Fx3057%5F%5Fx305f%5F%5Fx52-

2.手順1で取得した文字列をデコードする
 デコード前:
 %5Fx8ffd%5F%5Fx52a0%5F%5Fx3057%5F%5Fx305f%5F%5Fx52

 デコード後:
 _x8ffd__x52a0__x3057__x305f__x52

3.手順2で取得した文字列を 16進数Unicode形式から変換
 変換前:
 _x8ffd__x52a0__x3057__x305f__x52

 変換後:
 _x深__x井__xで__xす_

4.手順3で取得した文字列から以下の文字を削除

 ・先頭の「_x」
 ・「__x」
 ・末尾の「_」

 削除前:
 _x深_x井__xで__xす_

 削除後:
 深井です

ご参考までに上記の例ではデコードを以下のサイトを使って行いました。
so-zou.jp