やあ、
特定の文字列で構成される複数の列ヘッダー名の名前を変更しようとしていますが、文字列の前の部分を削除しながら既存の文字列で名前を変更しようとしています。
例:
ABC_12::ABCD_AB_ABCDEF_A_ABCDE_X_X_A1_1234_ABCD_ TESTING_AB_TEST_ABCD_TESTED_AB_A1 --> TESTING_AB_TEST_ABCD_TESTED_AB_A1
文字列の最初の部分 (オレンジ色) の文字数は常に一定で、文字列の 2 番目の部分は 1 から別の文字に変化します。
これまでに行ったことは次のとおりです。
dt=current data table();
colList = dt << get column names( string );
For( i = 1, i <= N Items( colList ), i++,
If( Left( colList[i], 50 ) == "ABC_12::ABCD_AB_ABCDEF_A_ABCDE_X_X_A1_1234_ABCD",
Column( dt, colList[i] ) << Substr((colList[i],50) ), // this is the part where i m stuck.
)
);
Trim & Left を使ってみました。 しかし、うまくいきません。 「セット名」を使用して、50 文字目以降の文字列を取得するというアイデアがあります。 しかし、これを行うためのより良い方法が必要です。
使用する必要があります
<< set name
列の名前を変更するには
Names Default To Here( 1 );
dt = Current Data Table();
colList = dt << get column names( string );
For( i = 1, i <= N Items( colList ), i++,
If( Left( colList[i], 48 ) == "ABC_12::ABCD_AB_ABCDEF_A_ABCDE_X_X_A1_1234_ABCD_",
Column( dt, colList[i] ) << set name( Substr( colList[i], 49 ) ), // this is the part where i m stuck.
)
);